Ilgiz
14.08.2017
06:20:09
так он не хочет
Andrey ?
14.08.2017
06:20:44
Я на руби парсил
https://github.com/4ndv/pikabuparser/
Google
Алексей
14.08.2017
06:21:42
Всем привет! Есть онлайн конструктор без регистрации и смс, для блок-схем, бизнес-процессов? Киньте ссыль. Можно простенький
Andrey ?
14.08.2017
06:22:11
М, draw.io?
Ilgiz
14.08.2017
06:24:57
Я на руби парсил
я вот так делаю
var text = new Buffer(body, 'binary');
var conv = new iconv.Iconv('windows-1251', 'utf-8');
var html = conv.convert(text).toString();
Andrey ?
14.08.2017
06:36:26
А binary точно там нужен?
Дмитрий
14.08.2017
06:40:01
Стандартный диалог на пикабу
Ilgiz
14.08.2017
06:40:09
не правильный
Дмитрий
14.08.2017
06:40:23
— ээээээ э ээ!
Ilgiz
14.08.2017
06:40:48
на сайте другой диалог
Eliajah
14.08.2017
07:11:49
Привет. Есть сервер REST API и фронтенд на реакте, как мне это всё склеить, чтобы можно было задеплоить на хероку или do, например?
Andrey ?
14.08.2017
07:12:57
Google
Andrey ?
14.08.2017
07:13:53
В случае с хероку
Если на do - настроить nginx
? Snyp
14.08.2017
07:14:07
Народ, есть у кого канал по вакансиям it-специальностей? Если есть - скиньте пожалуйста.
Eliajah
14.08.2017
07:14:30
Andrey ?
14.08.2017
07:14:55
Что лучше, красное или колючее?
На хероку не надо ручками админить, на do надо
Но на хероку и ограничений полно из-за этого
Хотя, можно на do поставить dokku и, считай, у тебя свой личный хероку
Eliajah
14.08.2017
07:17:10
Сложно nginx настраивается для такого случая? Никогда дела не имел с ним
Andrey ?
14.08.2017
07:17:50
Как я могу ответить на этот вопрос? Мне - не сложно ?
Eliajah
14.08.2017
07:19:03
А есть какие-то примеры или что-то типо того ?
Andrey ?
14.08.2017
07:19:17
Уверен, в гугле их полно
Eliajah
14.08.2017
07:20:41
Мне нужно его установить на ту машину, которую дадут на do, например и настроить?
Dmitry ?
14.08.2017
07:25:44
На самом DO бывают инструкции, уверен есть для nginx
Gleb
14.08.2017
08:02:23
Причесал таки свой шаблончик и вывалил на GitHub. Если не сложно, скажите, что думаете, что/где забыл добавить, какие печеньки? https://github.com/TeslaCtroitel/koa-node8-boilerplate
Eugene
14.08.2017
08:03:06
Выглядит вкусненько!
Konstantin
14.08.2017
08:19:08
Таймураз
14.08.2017
08:30:13
я бы добавил хак, чтобы src в NODE_PATH добавить
Konstantin
14.08.2017
08:30:39
Например, дев-докерфайл у меня типа вот такого. У меня нет на сервере транспилинга, т.ч. без него. Конечно, он не без изъянов (например, не удаляется кеш npm).
FROM node:8-alpine
# Setting environment variables
ENV HOME=/home/node NODE_ENV=development
# First, installing dependencies into temporary directory
COPY ./src/package*.json $HOME/tmp/
RUN cd $HOME/tmp && npm install
# Then copy packages to the app's directory
RUN mkdir -p $HOME/app \
&& cp -a $HOME/tmp/* $HOME/app/ \
&& chown -R node:node $HOME/app
# Work on behalf of `node` user
USER node
# Exposing default port for the app, as well as the one for debugger
EXPOSE 8080 9229
WORKDIR $HOME/app
CMD ["npm", "start"]
Google
Konstantin
14.08.2017
08:31:37
Директория с кодом подрубается как волюм для того, чтобы можно было его менять.
Gleb
14.08.2017
08:42:23
Я бы тоже его с удовольствием переработал, только вот npm@5 сломал npm prune ? Так что там не только ж слои лишние, там зависимости переустанавливаются) Но в общем да, пойду подчищу и добавлю dev version.
Sergey
14.08.2017
09:48:44
кроме чатов и todo какой еще проект можно сделать,
чтобы изучить реакт, используя express ?
Ignat
14.08.2017
09:49:03
хм, да любой
по своим нуждам и интересам выбери
сделай какой-нибудь тест по английскому с добавлением слов и etc. — у меня товарищ такой первый проект для себя сделал
Ivan
14.08.2017
09:54:16
Коллега запилил статью на хабре про акторы в NodeJS
Написал статью про Comedy: https://habrahabr.ru/post/334986/
Gleb
14.08.2017
10:50:54
Charles
14.08.2017
11:06:38
ребят, кто-нибудь Атом юзает? У меня проблемка - обновился плагин autocomplete+, теперь статус-бар выдает "rebuilding paths cache" и это продолжается с 11 часов утра. Раз в какое-то время говорит "editor not responsing" и там его можно либо заглушить либо подождать. После глушения и запуска та же хрень. Как это безобразие пофиксить?
Виктор
14.08.2017
11:07:18
Charles
14.08.2017
11:12:25
вот такая вот у меня шняга, скрин креплю
все, atom —clear-window-state помогло
Gleb
14.08.2017
11:57:59
Виктор
14.08.2017
12:07:32
Gleb
14.08.2017
12:10:36
Max
14.08.2017
12:23:57
Народ, объясните пожалуйста почему все топят за горизонтальное маштабирование и микросервисы? Как по мне до определенной степени нагрузки поставить более мощный сервер будет дешевле (вертикальное маштабирование), и я не понимаю как можно маштабировать ту же базу данных и транзакции где операция проверки и принятия решения должна выполнятся анатомически исключая любое параллельное считывание и запись в базу. А если нельзя отмаштабировать базу данных то какой смысл в n серверах если им всем нужно будет работать с одной базой данных и будут выстраиваться в очередь и ждать
Gleb
14.08.2017
12:26:46
Sergey
14.08.2017
12:27:32
Konstantin
14.08.2017
12:33:27
Google
Konstantin
14.08.2017
12:34:02
Ну и да, у апгрейда оборудования есть физический предел.
Vsevolod
14.08.2017
12:48:32
К тому же иногда дешевле 2 сервера маломощных, чем 1 более мощный :)
Konstantin
14.08.2017
12:52:56
(В)опрос:
Есть функция, которая проверяет строку на наличие «плохих» символов с помощью RegExp. Как бы вы написали:
1) объявил бы константу вне функции и использовал бы её:
const RE_BAD_SYMBOLS = /[#%$]/;
2) использовал бы регексп-литерал инлайн:
if (/[#%$]/i.test(str)
Charles
14.08.2017
12:59:01
люди, вопрос в плане дизайна немного. смотрите, есть вот такая вот простецкая функция
loop = setInterval(() => {
let date = new Date();
if (date.getHours() == 0 && date.getMinutes() == 0 && date.getSeconds() == 1) {
tick();
}
}, 1000);
не очень выглядит конечно, но делает то что надо, тикает раз в день в 00.00.01. Вопрос следующий - как вам кажется, так оставить или все таки заюзать крон и подрубить либу которая на него смотрит и запускает tick() вместо setInterval?
Evgeny
14.08.2017
13:01:54
Charles
14.08.2017
13:02:07
хорошо, а в чем преимущество/недостатки и того и другого?
Evgeny
14.08.2017
13:02:29
Charles
14.08.2017
13:02:37
Evgeny
14.08.2017
13:02:56
не то чтобы очень понял
Charles
14.08.2017
13:04:29
ээ.... ну придется в цикле проверять на то что время == 00.00.01 и стартовать интервал именно в этот момент, если я правильно вас понял. это два цикла вместо одного) или я не так понял?
ща
Evgeny
14.08.2017
13:05:09
settimmeout на оставшееся до 00-00-01 время
Charles
14.08.2017
13:05:38
checkLoop = setInterval(() => {
let date = new Date();
if (date.getHours() == 0 && date.getMinutes() == 0 && date.getSeconds() == 1) {
loop = setInterval(() => {
tick();
}, 1000);
clearInterval(checkLoop);
}
}, 1000);
ну или таймаут как вы говорите, да
ну а все таки более обзорно (реализации на вкус и цвет) - вы могли бы сказать какие плюсы-минусы первого и второго подхода? может просто реализовывали уже подобное, знаете подводные камни. я прост в первый раз такое делаю)
знаю что у системного времени всегда может быть задница с рассинхроном - но это в общем-то в данном конкретном случае в обоих вариантах возможно (если только не провязываться с NTP)
Alex
14.08.2017
13:24:07
эм, там еще и не сработать может в теории
если например было
00:00:00.999, а потом там что-то заело и оно сработало через 1002 миллисекунды
или fs.readFileSync('10TbOfLogs.txt')
https://www.npmjs.com/search?q=cron
Charles
14.08.2017
13:39:58
Ну, таких операций по идее не предполагается) задержка в несколько минут и даже час тоже в принципе не критична
Google
Evgeny
14.08.2017
13:47:36
Вопрос не в этом, а в том приведенное выше решение не сработает
Eliajah
14.08.2017
13:52:18
Как можно отследить каждый запрос к api?
Что бы записать логи, например
Vsevolod
14.08.2017
13:52:55
что для апи используется?
Evgeny
14.08.2017
13:52:56
nginx
Vsevolod
14.08.2017
13:53:07
и на каком уровне логи надо
Eliajah
14.08.2017
13:53:13
Vsevolod
14.08.2017
13:54:05
если ниче не надо, то можешь в логи нгинкса
если надо доп инфа
то можешь посмотреть на morgan
доп инфа из самого приложения