Game updater - cpp

Projack

Бессмертный
VIP
Сообщения
496
Розыгрыши
0
Решения
2
Репутация
974
Реакции
878
Баллы
1 668
Представьте когда у вас сервер, вы зарабатываете миллионы на нём и у вас допиленный апдейтер из шары, где вы из дизайна только картинку на фоне сменили.



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


Апдейтер на плюсах, а файлы для патча готовит java тула.

Вам останется - пофиксить пару баг с отображением байт. Переделать хеш функцию, по хорошему перенести загрузку с S3 и поменять дизайн под себя . Ну и подготовку патча сделать многопоточным. Все инструкции автор в readme раписал
 
Последнее редактирование:
прежний был лучше там =)
 
Не плохой по реализации, но до ритэйла он явно не дотягивает(curl для загрузки такое себе ), и он сложно масштабируем .
 
Очень забавно, учитывая что единственная альтернатива libCurl если ты не хочешь заиметь кучу проблем с SSL - это boost/asio с миллионом зависимостей
 
А он вообще в HTTPS умеет? А то на гите
OpenSSL в зависимостях есть, так что не вижу проблемы.
Но на всякий случай все-же CURLOPT_SSL_VERIFYPEER/CURLOPT_SSL_VERIFYHOST я бы дополнительно отключил. Всякие Avira/Avast/360 Security любят подменять сертификаты для скана траффика на весьма сомнительные которые OpenSSL не может верифицировать.
 
Кто тебе это сказал ? Это C++ здесь можно использовать самый минимум, в том же Steam, Origin, battlenet не используют libcurl , да даже Chrome не использует LibCurl для скачивания файлов по https .
 
Оооох, ну я посмотрю как ты накидаешь хидер на C++ с самым минимумом хотя бы с поддержкой SSL/HTTP2 (я не говорю уже мониторинге\ретраях\скачка блоками по оффсетам\работе с хидерами и т.п. что ПРИДЕТСЯ сделать при работе с большинством CDN). Да ты уже на SSL отвалишься и залинкуешь libcurl

PS: Chrome использует свою имплементацию cronet на базе libcurl (ранее называлась libcurl_on_cronet). Steam/Origin и прочие магазины могут себе позволить изобрести велосипед который будет отвечать их конкретным критерям.