Открыть список
Как стать автором
Обновить
13.5
Карма
0
Рейтинг
Эдуард @claygod

Пользователь

Ящик для хранения данных в go-приложениях

ПрограммированиеGo
image

Небольшая заметка о встраиваемой key-value БД под названием Coffer, написанной на Golang. Если совсем коротко: в остановленном состоянии БД данные лежат на диске, при запуске данные копируются в память. Чтение происходит из памяти. При записи изменяются данные памяти, а изменения записываются в журнал на диск. Максимальный размер хранимых данных ограничен размером оперативной памяти. API позволяет создавать хидеры для записей БД и применять их в транзакциях, сохраняя при этом консистентность данных.

Читать дальше →
Всего голосов 20: ↑18 и ↓2 +16
Просмотры4.6K
Комментарии 18

Микросервис на Golang

GoМикросервисы
image Среди беспорядка найдите простоту; среди раздора найдите гармонию; в трудности найдите возможность...
(С) Альберт Эйнштейн

Статей о микросервисах, их достоинствах и недостатках в последнее время написано немало. Однако как-то редко кто пишет об имплементации микросервисной архитектуры, и прежде всего, именно об микросервисе, как о кирпичике, из которой и строится потом здание такого приложения. Я попытался восполнить этот пробел, и поделиться своим опытом в разработке http-микросервиса, вылившемся в конечном счёте в небольшую библиотеку под не оставляющим места для сомнений названием Microservice. Код написан на прекрасно подходящем для микросервисов, простом и удобном языке программирования Golang.
Читать дальше →
Всего голосов 24: ↑21 и ↓3 +18
Просмотры27.3K
Комментарии 27

Monolithic Message-Oriented Application (MMOA)

Go
Message Только закончив проект
вы обладаете полноценным знанием,
как его надо было реализовывать.

(С) Том Демарко

Мне всегда ходелось попробовать написать приложение, модули которого между собой общаются с помощью обмена сообщениями. В принципе, это вполне даже в духе классического понимания ооп его основоположниками. Однако до Erlang я не дорос и знаком только с Golang, поэтому именно на нём и попробовал создать немного причудливую, но тем не менее любопытную архитектуру web-приложения.
Читать дальше →
Всего голосов 12: ↑11 и ↓1 +10
Просмотры5.1K
Комментарии 9

Имплементация алгоритма Бэйли—Боруэйна—Плаффа на Golang

Go
Pi
Число Пи, скажу вам братцы,
Легче так запоминать.
Три четырнадцать пятнадцать
Девять два, шесть пять, три пять.

© Дмитрий Эйт


Недавно мне потребовалось число Пи в шестнадцатиричном формате. Примерно 10000 знаков после запятой. Однако все публикации в сети как правило демонстрируют Пи в десятичном виде. Потыкавшись немного я нашёл Пи в двоичном виде, и это меня более чем устроило: простая конвертация решила поставленные задачи. Тут бы и закончить историю, но как говорится, «ложечка-то нашлась, а осадок остался». Ниже вы сможете посмотреть простую имплементацию библиотеки PiHex, генерирующей цифру, или последовательность цифр в любой позиции после запятой у числа Пи (правда, не более, чем 10,000,000).
Читать дальше →
Всего голосов 10: ↑5 и ↓5 0
Просмотры3.4K
Комментарии 7

Роутер на Golang

Go
image Добро пожаловать, или Посторонним вход воспрещён
(С) Э.Г.Климов 1964


Написанный на языке Go роутер (или как его ещё иногда называют — маршрутизатор), который оказался достаточно быстрым для того, чтобы его не стыдно было сравнить с лидерами go-роутинга: Bone, Httprouter, Gorilla, Zeus. Название роутеру дало простое русское слово «Вход», набранное английскими буквами в кодировке волапюк en.wikipedia.org/wiki/Volapuk_encoding

Читать дальше →
Всего голосов 22: ↑19 и ↓3 +16
Просмотры24.2K
Комментарии 28

Lua микро-фреймворк на Apache

Lua
Лучше маленькая рыбка, чем большой таракан.
Русская поговорка

Lua нравится всем, он простой, но не примитивный. Нет, скорее — продуманный, выверенный, оптимальный. Р.Иерузалимски (автор языка), в своей книге «Программирование на языке Lua» пишет: «Lua — это крошечный и простой язык». Это так. И ещё он скриптовый, переносимый, эффективный, расширяемый, склеивающий (glue). Как же такой не попробовать?

Как и многие другие, я поддался искушению заглянуть, что же из себя представляет Lua. Ну а поскольку самый лучший способ изучить язык, это написать на нём программу, я решил набросать простой веб-микрофреймворк под сервер Apache (версии 2.3+). Апач выбран потому, что он есть на каждом хостинге, и вся настройка под Lua заключается во включении модуля mod_lua.so в конфигурации сервера. Это решение конечно, будет медленнее, чем на Nginx, но возможно, нам больше и не надо?
Читать дальше →
Всего голосов 13: ↑13 и ↓0 +13
Просмотры13.4K
Комментарии 14

SSI сайт: HTML, XML, XSLT

Ненормальное программированиеXMLXSLT
Из песочницы
image
Достопочтенное Ретро! Благо ты или зло?
Вздохом какого ветра к нам тебя занесло?
© Роберт Рождественский

Есть вещи, которые просто нравятся, их приятно держать в руках, они просты, они понятны. Время их расцвета ушло, но сами они не канули в лету, и к ним возвращаются снова и снова. Это касается не только предметов материального мира. Всегда найдётся программист, которому интересно писать на ассемблере, или прямо в машинных кодах, любитель простоты, минимализма, ретро. Попробуем вернуться к SSI, благо, это и проще ассемблера, и значительно моложе.
Читать дальше →
Всего голосов 10: ↑8 и ↓2 +6
Просмотры11.8K
Комментарии 10

Информация

В рейтинге
5,758-й
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность