Pages:
Author

Topic: Давайте создадим с нуля биржу Open Source? - page 6. (Read 32289 times)

kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Во первых, арифметические операции можно делать прямо внутри sql update. В опенсорсной версии у меня так и делается...
Во вторых, если по уму, то базу надо организовывать по методу двойной бухгалтерской записи. В таком случае вообще нет операций update, а есть только insert , а итог считается селектом. Ошибки в таком случае практически невозможны.

В третьих, в sqlite ЕСТЬ транзакции. Внезапно?
sr. member
Activity: 378
Merit: 252
Тут в принципе не подходит sqlite так как в ней нет блокировки на уровне строк, при большой нагрузке это необходимо иначе операции просто пойдут неправильно.


Где про эту особенность sqlite можно почитать?

ЗЫ брутфорс сайта с капчей это бесполезное занятие. Не нужны никакие блокировки.

почитайте о транзакциях в базах данных. Или давайте представим ситуацию: пользователь производит операцию создания ордера и у него баланс 0.01 BTC который вычитается и в базу записывается 0, и в этот же момент у него срабатывает другой ордер который также видит баланс 0.01 и хочет прибавить к нему 0.005 за исполненный ордер на продажу.  В зависимости от того какая операция запишет в базу первая или вторая баланс будет либо 0 либо 0.015 и то и другое неправильно. Должна быть блокировка на уровне строки которая не позволит получить баланс пользователя из базы пока не завершена другая операция. В sqlite можно блокировать только таблицу полностью, это сильно уменьшит производительность

Ребята на счет производительности и прочего да, но она сама легковестная и мобильная да и человек делает же сам поэтому использует то что ему нравиться, проект же open source поэтому вы там можете у себя подпилить и юзать хоть mongo хоть postgres и даже закомить в главный реп а там уже  обсудить все и дополнить разработку. А так спорить можно очень долго и рассказывать и про транзакции и прочее
sr. member
Activity: 1092
Merit: 273
Тут в принципе не подходит sqlite так как в ней нет блокировки на уровне строк, при большой нагрузке это необходимо иначе операции просто пойдут неправильно.


Где про эту особенность sqlite можно почитать?

ЗЫ брутфорс сайта с капчей это бесполезное занятие. Не нужны никакие блокировки.

почитайте о транзакциях в базах данных. Или давайте представим ситуацию: пользователь производит операцию создания ордера и у него баланс 0.01 BTC который вычитается и в базу записывается 0, и в этот же момент у него срабатывает другой ордер который также видит баланс 0.01 и хочет прибавить к нему 0.005 за исполненный ордер на продажу.  В зависимости от того какая операция запишет в базу первая или вторая баланс будет либо 0 либо 0.015 и то и другое неправильно. Должна быть блокировка на уровне строки которая не позволит получить баланс пользователя из базы пока не завершена другая операция. В sqlite можно блокировать только таблицу полностью, это сильно уменьшит производительность
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Тут в принципе не подходит sqlite так как в ней нет блокировки на уровне строк, при большой нагрузке это необходимо иначе операции просто пойдут неправильно.


Где про эту особенность sqlite можно почитать?

ЗЫ брутфорс сайта с капчей это бесполезное занятие. Не нужны никакие блокировки.
sr. member
Activity: 1092
Merit: 273
У меня был опыт управления биржей, решается тут все просто, каптча появляется после 2 неверных попыток ввода пароля.  После 10 неверных попыток блокировать доступ на час.

не рабочий вариант. узнав логины (скажем из бирживовго чата) можно вредить, блокируя других пользователей на постоянной основе. А не зная логины может тоже можно блокировать вход пользователей, если стучаться очень быстро... зависит от кода на стороне сервера.

Я имею ввиду бан по IP, а столько прокси чтобы после каждых 2 попыток менять IP хакеры не найдут.
Банить можно как в форме авторизации так и прямо на сервере через iptables, в таком случае у хакера не откроется ни одна страница и уменьшится нагрузка на платформу
jr. member
Activity: 198
Merit: 8
У меня был опыт управления биржей, решается тут все просто, каптча появляется после 2 неверных попыток ввода пароля.  После 10 неверных попыток блокировать доступ на час.

не рабочий вариант. узнав логины (скажем из бирживовго чата) можно вредить, блокируя других пользователей на постоянной основе. А не зная логины может тоже можно блокировать вход пользователей, если стучаться очень быстро... зависит от кода на стороне сервера.
sr. member
Activity: 1092
Merit: 273
Серъезно, она же еле ползает наверно.

Отнюдь.

Тут в принципе не подходит sqlite так как в ней нет блокировки на уровне строк, при большой нагрузке это необходимо иначе операции просто пойдут неправильно.

Жесть. Бутят. Очень быстро. Скорость Брута зависит от исходящего канала. нужно тайминг вставить.
Соль нельзя сменить после первого пуска или я не понял как.
Нужно тайминг вставить, что-бы ответ на неверный пароль приходил с задержкой а не мгновенно..
Я понимаю что капча решает, но она уже давно не нужна от слова совсем, ну разве людей только мучать.


У меня был опыт управления биржей, решается тут все просто, каптча появляется после 2 неверных попыток ввода пароля.  После 10 неверных попыток блокировать доступ на час.
jr. member
Activity: 198
Merit: 8
Жесть. Бутят. Очень быстро. Скорость Брута зависит от исходящего канала. нужно тайминг вставить.
Соль нельзя сменить после первого пуска или я не понял как.
Нужно тайминг вставить, что-бы ответ на неверный пароль приходил с задержкой а не мгновенно..
Я понимаю что капча решает, но она уже давно не нужна от слова совсем, ну разве людей только мучать.

jr. member
Activity: 198
Merit: 8
Вашу биржу пытаются взломать методом социальной инженерии. говорят что знают вас. хороший признак. значит других методов нет)
подробности тут
https://discord.gg/QAnjK7U

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


full member
Activity: 1246
Merit: 138
Hodl DeepOnion
Серъезно, она же еле ползает наверно.

Отнюдь.
sr. member
Activity: 1092
Merit: 273
Quote
База данных sqlite

Серъезно, она же еле ползает наверно.

Нужно что-то по-серьезнее и конечно же не обращаться к базе данных при каждом запросе а создать веб-сокет который будет читать из базы только после проведения операций и отправлять всем пользователям

Дизайн мне тоже не понравился, не современный
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Интерфейс это вкусовщина. Я например когда черный фон у сайта вижу, то с вероятностью 90% с этого сайта навсегда ухожу.
Там на гитхабе все форкают и продолжают пилить сами по себе. Коммиты в основную ветку никто не делает... Потребители одни короче ((
sr. member
Activity: 378
Merit: 252
Quote
А что не так с дизайном? Он в принципе на бутстрапе, что по факту сегодня является технологическим стандартом.

Стандартом да, но это больше подходит для mvp или "быстро показать" на первое время а проект уже давненько живет, обычно ж или стили елементов BS меняют что бы не выглядело как дефолтный или с нуля редизайнят.
Просто дизайн довольно не маловажная часть, даже шрифты и сглаживания могут многое решить, но конечно если проект убыточный то и мотивации на это скорей всего нет.
Там в разных темах ребята мб за + Merit смогут помочь да или как то поболее развивать, что бы привлечь разработчиков

P.S Там на гитхабе ~300 форков и странно что все забили на дизайн)
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Доход отрицательный. Все на энтузиазме. В планах только исправление багов, на что-то кардинально новое нет времени.
А что не так с дизайном? Он в принципе на бутстрапе, что по факту сегодня является технологическим стандартом.
sr. member
Activity: 378
Merit: 252
Давно в тему не заходил > полу года, хотел узнать а по прибыли вообще как хоть? Есть хоть какие то копейки или все сугубо на энтузиазме?
План который на 1й странице дополняется чем то новым? и планируется ли какой то более юзерфрендли дизайн?
jr. member
Activity: 198
Merit: 8
Впринцепе оно и верно что обменник закрытый код ибо коммерческая тайна, так как обменники сейчас это золотая жила. Меня собсна че и заинтересовал то проект, так как здесь биржа совмещенная с обменником это очень толковая идея, нигде до этого не видел.

Код обменников намооого проще кода биржи и закрыт он обычно из-за того, что для поддержания своего обменника нужны Огромные запасы крипты по всем направлениям обмена, поэтому обычно "дергают" API (аутсорсят) других обменников (тех кто имеет запасы крипты для мгновенного обмена). Если биржа разрастается и на ее депозита скапливаются большие суммы, то открыть мгновенный обмен на базе кода биржи очень легко (это мгновенное удовлетворение ордеров с депозитов самой биржи по предустановленной цене). Вот в чем прикол))
newbie
Activity: 6
Merit: 0
Впринцепе оно и верно что обменник закрытый код ибо коммерческая тайна, так как обменники сейчас это золотая жила. Меня собсна че и заинтересовал то проект, так как здесь биржа совмещенная с обменником это очень толковая идея, нигде до этого не видел.
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
только биржа.
код обменника я нигде не выкладываю.
newbie
Activity: 6
Merit: 0
а в этой папке opentrade-master Только биржа или еще обменник, Dice, форум...?
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Обменнику нужен очень крупный напильник... Как и бирже.
Pages:
Jump to: