Комментарии 36
Делаем зал славы TOP50 ботовод :) 10-15 минут.
Огласите весь список, пожалуйста (с) :)
ух, пока только TOP50 http://odn.pw/#/topkek
5-е место, отлично, особенно пропорционально усилиям =)
А есть разбивка по языкам? Вообще ввязался только потому что за C# стало обидно, он вчера почти ниже всех был =)
А есть разбивка по языкам? Вообще ввязался только потому что за C# стало обидно, он вчера почти ниже всех был =)
Уря!
33. ua3mqj@… 963611
Если кому-то интересно.
Пристреливался с ноута на i7. Потом оставил на кухне на компе, где супруга кино обычно смотрит.
AMD Athlon(tm) ii x2 250 processor 3.00 ghz
ОС: Windows 7
Язык программирования — Elixir
Проект никакой не делал, просто из консоли запустил. В 100 процессов. По показаниям WIN, аплоад составлял 10 мегабит (потолок моего интернета).
зы. Ждем подробностей от остальных участников!
33. ua3mqj@… 963611
Если кому-то интересно.
Пристреливался с ноута на i7. Потом оставил на кухне на компе, где супруга кино обычно смотрит.
AMD Athlon(tm) ii x2 250 processor 3.00 ghz
ОС: Windows 7
Язык программирования — Elixir
Проект никакой не делал, просто из консоли запустил. В 100 процессов. По показаниям WIN, аплоад составлял 10 мегабит (потолок моего интернета).
код
require HTTPotion
:observer.start
Enum.map(1..100, fn(xx) ->
spawn(fn ->
Enum.map(1..1000000, fn(x) ->
url = "http://stats.df.wtf/api/v1/poll"
header = ["Content-Type": "application/json"]
body = "{\"email\":\"ua3mqj@...\",\"language\":9}"
result = HTTPotion.post(url, [body: body, headers: header])
end)
end)
end)
зы. Ждем подробностей от остальных участников!
Mongo
Tarantool сделал бы монгу, как стоячую.
в десяточку влез)
интересно как бы кто взламывал?
я нашел только несколько методов api(уже отключены)
http://stats.df.wtf/api/v1/poll?full=true
http://stats.df.wtf/api/v1/userstats
http://stats.df.wtf/api/v1/top
интересно как бы кто взламывал?
я нашел только несколько методов api(уже отключены)
http://stats.df.wtf/api/v1/poll?full=true
http://stats.df.wtf/api/v1/userstats
http://stats.df.wtf/api/v1/top
18-й :)
34. dzmitry_t@…
Консольный скриптик на коленке. Сразу на одной из рабочих виртуалок, а потом с домашнего неттопа-роутера (AMD C-70 2x1GHz). Вообще интересно, а сколько всего человек так или иначе пыталось DDOS'ить голосовалку?
Консольный скриптик на коленке. Сразу на одной из рабочих виртуалок, а потом с домашнего неттопа-роутера (AMD C-70 2x1GHz). Вообще интересно, а сколько всего человек так или иначе пыталось DDOS'ить голосовалку?
Код
#!/bin/bash
i=0;
while [ $i -le 1000000 ]; do
nohup curl --silent -H «Content-Type: application/json» -X POST -d '{ «email»: «dzmitry_t@..», «language»: 9}' http://stats.df.wtf/api/v1/poll > /dev/null 2>&1 &
let i=i+1;
done;
i=0;
while [ $i -le 1000000 ]; do
nohup curl --silent -H «Content-Type: application/json» -X POST -d '{ «email»: «dzmitry_t@..», «language»: 9}' http://stats.df.wtf/api/v1/poll > /dev/null 2>&1 &
let i=i+1;
done;
В первый день я тупо сделал в баше цикл:
while true
do
curl ...
done
И запустил таких около 1000 процессов.
На второй день не поленился и написал на Java такой вот класс:
Main.java
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;
/**
* Created by jatx on 06.06.17.
*/
public class Main {
private static volatile int success = 0;
private static volatile int total = 0;
private static int THREADS;
public static void main(String[] args) {
THREADS = Integer.parseInt(args[0]);
for (int i=0; i<THREADS; i++) {
Voter voter = new Voter();
voter.start();
}
while (true) {
try {
Thread.sleep(2500);
System.err.println(success + " / " + total);
} catch (Exception e) {}
}
}
private static class Voter extends Thread {
@Override
public void run() {
HttpClient httpClient = HttpClientBuilder.create().build();
while (true) {
try {
HttpPost request = new HttpPost("http://stats.df.wtf/api/v1/poll");
request.setHeader("Content-type", "application/json");
StringEntity entity = new StringEntity("{\"email\":\"e.tabatsky@gmail.com\",\"language\":1");
request.setEntity(entity);
HttpResponse response = httpClient.execute(request);
String result = EntityUtils.toString(response.getEntity());
if (result.equals("{\"status\":\"ok\"}")) success++;
total++;
} catch (Exception e) {
//e.printStackTrace();
}
}
}
}
}
Запустил в 12500 потоков, больше ресурсы ноута не позволяли.
Итого 21 место :)
В корпоративном чатике сообщают, что коллеги («Флант») оказались на третьем месте :-) Спасибо за фан!
Написал на GO, запустил в пару сотен потоков, уперся в потолок исходящего канала провайдера
З.Ы. 22 место
З.Ы. 22 место
За эти смайлики тем, кто пихает их куда ни попадя, нужно делать бОлЬнО
Ой, да ладно уж Вам (тут не вставлен emoji).
Все верно говорит. Как читать?
1) Самый активный «медалька» получит «приз»? — берем все смайлы.
2) Самый активный получит? — не берем смайлы вообще. Но тут уже начинаются опасения…
Или надо угадывать, какой смайл оставить, какой убрать?
1) Самый активный «медалька» получит «приз»? — берем все смайлы.
2) Самый активный получит? — не берем смайлы вообще. Но тут уже начинаются опасения…
Или надо угадывать, какой смайл оставить, какой убрать?
Это как с матами. Умело ввернутый в нужной ситуации – отлично передает эмоциональный накал и придает экспрессии. Вставляемый же после каждой фразы "неопределенный артикль %ля" ничего кроме омерзения не вызывает.
Ребусы современные они такие… Эмоциональные…
А призы то будут?
Для получения призов пишите kosheleva_ingram_micro
Я запили на Node.JS отправку запросов а несколько потоков.
К ним же добавил консольных PHP процессов, но они быстро ресурсы скушали… :( прошлось остаться только на Node.JS
К ним же добавил консольных PHP процессов, но они быстро ресурсы скушали… :( прошлось остаться только на Node.JS
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
«Сломай голосовалку на РИТ++». Даёшь 1 000 000 RPS