@thedevs · Post #1553 · 08.08.2019 г., 18:12
Faster, cheaper, and better: A story of breaking a monolith. #article#microservice#coding @thedevs https://kutt.it/6u5iy5
Hashtags
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #266 · 21.03
Много лет назад я делал игру ВКонтакте про домики. Одно общее изометрическое поле, где у каждого свой участок, на котором можно строить дом, выбирать его размеры, материалы, форму окон и крыши. И обставлять мебелью. Поле было квадратным 100 на 100, соответственно у каждого квартала был номер по одной оси X от 0 до 99 и по другой Y от 0 до 99. По какой-то причине мне тогда нужно было сохранить это в одном числе как идентификатор квартала, и я подумал, что изобрёл гениальный способ: A = X*100 + Y. Извлечь обратно тоже было легко: поделить A на 100 и округлить вниз, это получался X. А потом Y = A - X*100. Например, квартал с координатами 13-29, собственно, так и записывался: 1329. Важно, что это математические операции, а не строковые. Они и сами по себе быстрее выполняются программой, и позволяют, например, удобно отсортировать участки. Я считал себя очень умным, не зная тогда, что по сути изобрёл системы исчисления, и вообще подобный подход очень банален и прост. Мы куда чаще видим это в битовых масках, потому что и сама задача для двузначных свойств возникает чаще, и компьютер существенно быстрее работает с битами, но от того, какая там база системы исчисления, математический смысл не меняется. Если тебе надо записать в одно число несколько свойств, каждое из которых может быть в N значениях, то в это число должно влезать N*N*N... сколько там у тебя этих свойств. Ты пишешь первое свойство n1, потом прибавляешь n2*N, потом n3*N*N и так далее. Величины существуют в разных разрядах N-ричной системы исчисления, поэтому не пересекаются, и их можно разделить. Игра, кстати, поначалу хорошо набирала пользователей, а потом перестала. Я думал, что она не интересная, и закрыл проект. А сильно позже уже выяснилось, что был баг в коде регистрации игрока, из-за чего новые приходить не смогли начиная с какого-то момента. В том самом коде, который извлекал координаты квартала из его идентификатора, да. #dev
Hashtags
Търсене: #microservice
@thedevs · Post #1553 · 08.08.2019 г., 18:12
Faster, cheaper, and better: A story of breaking a monolith. #article#microservice#coding @thedevs https://kutt.it/6u5iy5
Hashtags
@githubtrending · Post #14904 · 03.07.2025 г., 12:00
#go#ai_assistant#ai_generated_code#cloud_native#code_generation#custom_templates#developer_tools#development_framework#gin#go_sponge#golang#grpc#grpc_gateway#low_code#microservice#protobuf#restful_api#sponge#web Sponge is a powerful Go development framework that helps you quickly build backend services like RESTful APIs and microservices with minimal coding. It generates modular Go code automatically by parsing SQL, Protobuf, and JSON files, letting you create complete backend projects through a simple web interface without complex commands. Sponge supports custom templates and integrates AI assistants (like ChatGPT) to help write business logic, greatly speeding up development and reducing repetitive work. It also offers full support for testing, API docs, and deployment, making your project more stable, efficient, and easier to maintain. This saves you time and improves code quality. https://github.com/go-dev-frame/sponge
@githubtrending · Post #14691 · 10.05.2025 г., 00:00
#csharp#architecture#aspnetcore#clean_architecture#cqrs#ddd#dotnet#dotnetcore#event_driven_architecture#event_sourcing#kubernetes#masstransit#messaging#microservice#microservices#oauth2#opentelemetry#software_architecture#software_design#software_engineering#vertical_slice_architecture Migrating from a monolithic architecture to a cloud-native microservices architecture offers several benefits. It improves scalability, allowing different parts of the application to grow independently. This approach also enhances reliability by isolating faults, so if one service fails, others continue to work. Additionally, microservices enable faster deployment and updates, as each service can be developed and deployed separately. This flexibility allows teams to use the best technology for each service, making development more efficient and agile[2][3][5]. https://github.com/meysamhadeli/monolith-to-cloud-architecture