@rubyschool

Страница 383 из 921
Ro
25.09.2017
16:29:18
на хабре была статья, что они используют подержанные диски в рейдах, и я склонен это верить
в случае с VPS они сами ведь меняют, так что об этом ты не думаешь обычно

Fedor
25.09.2017
16:29:57
в том то и проблема, что уже дважды напарывался на даунтайм в несколько часов, потому что у них рейд терял сразу несколько дисков и разваливался

причем не на какой-то левой vpsке а на боевом выделенном сервере

Ro
25.09.2017
16:37:15
причем не на какой-то левой vpsке а на боевом выделенном сервере
ну выделенный - это твоя проблема уже имхо

Google
Ro
25.09.2017
16:37:25
тебе надо самому следить за состоянием дисков

и просить замены, когда они начинают сыпаться

Fedor
25.09.2017
16:37:46
я же не слот у них арендую под свое железо

Ro
25.09.2017
16:37:49
я не очень верю, что в 1 день они сразу все отвалились

Fedor
25.09.2017
16:37:53
это их машина и их мониторинг

Ro
25.09.2017
16:38:13
нет, дедик это твой дедик, ты следишь. Есть тулзы за мониторингом дисков

если диски становятся плохими - это видно обычно

сразу меняешь

(через заявку у личном кабинете)

Fedor
25.09.2017
16:38:58
может это зависит от конторы, но я ни разу не видел выделенных серверов без мониторинга

следят они, бэкапы делают они, восстанавливают тоже они

Ro
25.09.2017
16:39:29
не знаю, есть ли это в hetzner'е. По-моему нет)

но этим и отличается дедик от клауд-хостинга. Дедик - ну и парься с ним сам. А клауд - в 5 раз дороже, но не думаешь о проблемах с дисками. Они сами меняют. А вот дедика с мониторингом не юзал. Не знаешь у каких контор такое есть?

Google
Fedor
25.09.2017
16:43:35
клауд скорее отличается легким вертикальным масштабированием

Vitaly
26.09.2017
05:02:34
Самый большой напряг в Docker Swarm в связке с Rails это то, что secrets не поддерживают env, а сохраняются просто в файлы и пробрасываются в корневую директорию. Это неудобно. ?

pchellovod
26.09.2017
06:52:26
пытаюсь из постгресной базы в докере перенаправить вывод запроса в файл — не могу найти где этот файл сохраняется

Fedor
26.09.2017
06:56:08
а как делаешь то?

если ты это изнутри докера делаешь, то он где-то там внутри и остается

если делаешь сетевой запрос снаружи, то где-то снаружи должен быть )

там же путь указывать надо по идее

pchellovod
26.09.2017
06:59:04
если ты это изнутри докера делаешь, то он где-то там внутри и остается
обычным sql запросом делал, пытался найти где он там в докере — не нашёл

Aleksey
26.09.2017
07:22:58
Привет, всем. Подскажите как лучше реализовать историю изменений в виде ленты? Ну то есть отредактрировал кто-то объект модели, и мне надо записать кто и что изменил

Типа: "Иван изменил название на Велосипед с мотором"

"Иван изменил максимальную скорость на 25 км/ч"

пока интересует сам принцип, создать новую модель? И делать записи каждый раз когда кто-то что-то меняет?

Vitaly
26.09.2017
07:25:05
https://github.com/airblade/paper_trail

gem специально для отслеживания изменений

Alex
26.09.2017
09:54:42
Yuriy , привет. Бэкапов в этом тарифе нету? Они даже снэпшот себе не делают?

Nikolay
26.09.2017
12:15:03
Федор, здесь ли ты )

Fedor
26.09.2017
12:15:33
Лучше звать через @

Google
Nikolay
26.09.2017
12:15:53
да я чтобы не беспокоить лишний раз

подскажи пожалуйста, правильно лия понял принцип создания сервисного объекта. Для платежей сделал в app/service файл payment_service а в нем class PaymentService и методы класса в нем

Fedor
26.09.2017
12:17:49
Ну в целом да

Какого-то определенного стандарта нет, так что можно делать как удобно

Я обычно разделяю сервис и контекст

Тоестт один класс принимает параметры и как то их преобразовывает - это контекст

А второй принимает контекст и с ним работает

Nikolay
26.09.2017
12:19:24
это сложно понять без примера

Fedor
26.09.2017
12:19:35
Это дает гибкость что бы потом использовать тот же сервис с другими параметрами

сейчас

https://gist.github.com/fedorkk/929973807c20cb2f586b22816860ea4f

простейший вариант

Fedor
26.09.2017
12:30:17
но идея в том, что у тебя есть сервис - печать строки. Он всегда получает строку от контекста и печатает

и несколько контекстов, которые формируют строки из разных входных данных

в боевом варианте у тебя будет сервис, который, к примеру, создает продажу

и контексты, которые принимают параметры из интерфейса, или из API, или из файла импорта

но все в результате формируют одинаковый список параметров для работы сервиса

и потом если тебе надо добавить новый метод получения данных, то ты не плодишь if в старых методах, что бы понять, что же тебе пришло, а просто пишешь новый контекст и все

и если тебе надо вообще написать новое приложение, где надо создавать продажи, а данные берутся откуда-то еще, ты можешь полностью скоприровать туда сервис, и опять создать собственный контекст )

Nikolay
26.09.2017
12:34:19
гибко, хоть в статью оформляй

Google
Fedor
26.09.2017
12:34:46
ну если ты поищешь статьи про это, то там примерно то же самое и будет

я бы написал, но их и так полно )

просто без объяснения и реального примера тяжело понять, нафига это надо

Nikolay
26.09.2017
12:35:18
так почти всегда

Fedor
26.09.2017
12:35:28
я создал три класса, что бы написать 'hello world' - изврещение форменное )

а вот когда у тебя реально в приложении надо сделать что-то, и есть несколько разных источников данных, то это уже очень удобно

Vlad
26.09.2017
14:10:06
Подскажите что можно придумать удобного. Есть стационарный комп и есть ноут. Ноут калькулятор, стационарник тащит. На стационарнике только винда, линукс поставить нет возможности (зависает, уже обсуждали тут проблему эту). Через что можно организовать удобную разработку на ноуте? По SSH к нему подключаться то, а вот файлы через ftp плагины как-то синхронить? Просто надо чтобы это было настолько же незаметно и быстро, как на стационарной машине)

Fedor
26.09.2017
14:10:40
попробуй другое ядро

Admin
ERROR: S client not available

Vlad
26.09.2017
14:25:51
Да писал уже, что проблема на всех ядрах. Поэтому хочется с винды удаленно как-то работать. Ибо на ноуте когда линукс стоял простой bundle занимал секунд 25, в то время как на стационарнике 2 секунды. Про запуск сервера вообще молчу, холодный первый старт на ноуте 1 минута+, на стационарнике 2 секунды)

Fedor
26.09.2017
14:26:10
точно на всех?

их там несколько сотен )

у меня не встала 4.12 на новом ноуте, я взял образ с 4.8 и спокойно работаю

Vlad
26.09.2017
14:30:22
Да я перепробовал в свое время нормально и пытался решениями найденными фиксить свою проблему

https://askubuntu.com/questions/803640/system-freezes-completely-with-intel-bay-trail

С процессором проблема

Да и из-за скорости хочется удаленно кодить как-то удобно

Nikolay
26.09.2017
14:33:43
На стационарник виртуалку

Fedor
26.09.2017
14:33:52
It's a problem for many Bay Trail devices especially with newer (4.*) kernels.

Nikolay
26.09.2017
14:33:54
И через удалённый раб стол

Google
Fedor
26.09.2017
14:33:59
попробуй третье )

ну и ядров правильном режиме пробовал пускать?

могу посоветовать пойти в чатик федоры: https://t.me/russianfedora и спросить там

там крутые ребята сидят, которые могут более конкретный совет дать

Vlad
26.09.2017
14:36:38
И с третьим трабла была) Но нашаманил что зависало раз в 2-3 часа, что не столь критично было)

Vitaly
26.09.2017
14:48:17
https://www.jetbrains.com/toolbox/app/ Ловите бесплатный RubyMine. Ставьте 2017.3 EAP2

Узнал на выходных об этой штуке на стенде JetBrains

EAP обновляется каждые 3 недели

Yuriy
26.09.2017
15:32:04
Есть у кого нить pdf'ка книженции The rapid rubyist? Может запилим свою библиотечку?

Можно торрентом прикрепить здесь

Ro
26.09.2017
16:11:34
Узнал на выходных об этой штуке на стенде JetBrains
Прикольно, а как работает и почему бесплатно?

Tanya
26.09.2017
16:12:13
если я не ошибаюсь это типо бета версия, которая обновляется постоянно

Vitaly
26.09.2017
16:14:08
@ro31337 ну это программа у них такая для людей, которые могут на нестабильных релизах работать. Early access preview

Я уже давно сижу на ней

Однако раньше такого удобного инструмента обновления и загрузки не было

Ro
26.09.2017
16:27:37
?

Alex
26.09.2017
17:01:16
Ребята, есть такая форма на лэндинге. http://joxi.ru/5mdBZ8eivYQ1KA через нее идет спам, как бы её защитить? На остальные формы поставил reCaptcha, но на этой она же будет смотреться не красиво

Vlad
26.09.2017
17:56:48
мне помогло создание полей с кастомными названиями (не name, phone, email) + отсутствие кнопки отправки как таковой и отсутствие формы (было событие при нажатии на кнопку, которая собирала с инпута информацию и отправляла post запросом на адрес), еще велосипедом который как-то дописал, что не отправлялась форма без куки, которая писалась при прокрутке сайта и событии onmousewheel/scroll или не знаю и не знал как называется) ну суть понятна) велосипед и костыль тот еще, но и по сей день все живет нормально

вместо кнопки кажется div был просто ("div").click(...

в принципе мне даже кажется будет работать вариант с куками при событии определенном, которое есть только в браузере) или подгружать формы после загрузки страницы через ajax, спасает от большинства спамеров, кроме тех, что написаны через эмуляторы браузера и всякие там phantomjs, selenium

Ro
26.09.2017
18:11:46
Ребята, есть такая форма на лэндинге. http://joxi.ru/5mdBZ8eivYQ1KA через нее идет спам, как бы её защитить? На остальные формы поставил reCaptcha, но на этой она же будет смотреться не красиво
ничего не надо имхо. Это приток клиентов похоже для бизнеса. Максимум что я бы сделал - проверял бы IP адрес по anti-spam database и ставил бы флажок где-нибудь, что "вероятно спам". Клиент не должен чувствовать себя обделенным из-за спамеров. Потеряете только заказы.

Страница 383 из 921