Pull to refresh
3
0
Send message

V8 в бэкенде С++: от одного JS-скрипта до фреймворка онлайн-вычислений

Reading time31 min
Views10K
В этой статье я расскажу о долгом путешествии, в котором простая идея выноса в JavaScript часто меняющихся фрагментов алгоритма постепенно выросла в универсальный фреймворк, позволяющий быстро создавать микросервисы и так же быстро их развивать. Сейчас он служит основой для множества микросервисов в Яндекс Go. Тут не будет много специфики Go. Вместо этого будет много разработки и решений технических задач (а не продуктовых). Ещё я, конечно, расскажу про возникшие в процессе трудности: если вам, например, интересно, как V8 уживается с корутинами или как мы оптимизировали работу с ним для производительности, то добро пожаловать под кат.


Читать дальше →
Total votes 36: ↑36 and ↓0+36
Comments7

Подготовка к Spring Professional Certification. Контейнер, IoC, бины

Reading time10 min
Views111K

Доброго времени суток, Хабр.


Сегодня я решил представить вам перевод цикла статей для подготовки к Spring Professional Certification.


Это перевод только первой статьи, если он зайдет аудитории, я продолжу выпуск переводов.  


Зачем я это делаю, ведь уже есть куча профильных материалов?
  1. Часто в них информация не структурирована, не собрана, или не актуальна
  2. Молодые разработчики могут не знать английский. Этот цикл можно использовать не только для сертификации, но и для самообучения/повторения материалов.
  3. Этими материалами можно пользоваться при подготовке к собеседованию, т.к. они выстроены в виде вопросов и ответов.
  4. Важное, и самое главное преимущество — этот QA сделан из вопросов из  официального Study Guide от Pivotal. 

  • Некоторые вопросы, которые казались мне лишними или которых не было в гиде я осознанно упустил.

Оглавление
  1. Внедрение зависимостей, контейнер, IoC, бины
  2. AOP (аспектно-ориентированное программирование)
  3. JDBC, транзакции, JPA, Spring Data
  4. Spring Boot
  5. Spring MVC
  6. Spring Security
  7. REST
  8. Тестирование

Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments53

N+7 полезных книг

Reading time6 min
Views68K
Привет! Это очередной традиционый список книг, оказавшихся полезными за год. Сугубо субъективный, конечно. Но я серьёзно рассчитываю, что вы подскажете ещё классных штук почитать.



Думай медленно, решай быстро — Даниэль Канеман
Это самое волшебное, что случалось за последние годы в плане гиковой литературы. Эта штука последовательно открывает когнитивные искажения и учит настраивать мышление. При этом увлекательно. Вообще, подход к тому, что мышление — это набор техник, которые можно тренировать и оттачивать, он, наверное, правильнее подхода «это шаманство». Канеман в отличие от следующей в списке книги, показывающей особенности реверсивного мышления, не даёт новых техник — но показывает, где и какие ошибки мы совершаем при обычных процессах. Такой серьёзный дебаг мозга.
Читать дальше →
Total votes 73: ↑71 and ↓2+69
Comments80

GIT поэма

Reading time6 min
Views33K
В день рождения «солнца русской поэзии» представим, как выглядела бы его его сегодняшняя жизнь: система контроля версий стихов, цензор Бенкендорф как проджект-менеджер и горящие дедлайны.

image

Пушкин сидит, пишет стихи. Прибегает Бенкендорф.
— Слушай, Пушкин, у нас все сроки горят! Надо релизиться. Инвесторы спрашивают: где контент?
— Не, ну я так не могу! Бенкендорф, я тебе сколько раз говорил, что я так не могу.
— Александр! От меня требуют, я ничего поделать не могу. Давай релизиться. Что у тебя там?
— Вот…

Читать дальше →
Total votes 95: ↑81 and ↓14+67
Comments28

Web-приложение на C/C++ с помощью FastCGI — это просто

Reading time20 min
Views114K
Добрый день.
В этой статье я бы хотел рассказать про протокол FastCGI и способы работы с ним. Не смотря на то, что сам протокол и его реализация появились ещё в 1996 году, подробных руководств по этому протоколу просто нет — разработчики так и не написали справки к собственной библиотеке. Зато года два назад, когда я только начал пользоваться этим протоколом, часто встречались фразы типа «я не совсем понимаю, как пользоваться этой библиотекой». Именно этот недостаток я и хочу исправить — написать подробное руководство по использованию данного протокола в многопоточной программе и рекомендации по выбору различных параметров, которым могли бы воспользоваться все желающие.
Читать дальше →
Total votes 102: ↑97 and ↓5+92
Comments104

Как мы боролись с парсерами

Reading time16 min
Views36K
image
Ключевые моменты:
* Реализация скрипта для проверки PTR посетителей;
* Конфигурирование nginx в IfIsEvil-style с ветвлениями map;
* Имена location в переменных map;
* Управление ветвлением через try_files /nonexist $map_var.

Многие высоконагруженные и популярные сайты страдают от того, что кроме живых посетителей их посещают разнообразные парсеры, боты и прочие автоматические сканеры, которые не несут никакого полезного эффекта, а только создают паразитный трафик и нагрузку на, и без того, нагруженную систему. В данном случае я не имею виду поисковых ботов, которые хоть и зачастую нагружают проект не нормировано, но просто необходимы любому проекту.
Один из наших клиентов регулярно испытывал проблему лавинообразного роста нагрузки в определенное время суток. Периодически, раз в сутки и чаще происходили наплывы посещений со значительным ростом LA на серверах. Было принято решение построить защиту от паразитного трафика.

Читать дальше →
Total votes 39: ↑24 and ↓15+9
Comments59

Адреса ФИАС в среде PostgreSQL. Часть 4. ЭПИЛОГ

Reading time10 min
Views15K
Это четвертая и последняя часть статьи, которая содержит примеры создания таблицы fias_AddressObjects в базе данных под управлением PostgreSQL, а также загрузки в нее данных об адреснообразующих элементах ФИАС. После этих действий можно самостоятельно испытать функции, рассмотренные в первой, второй, и третьей частях, скопировав и выполнив скрипты на их создание.


Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments5

Баланс в играх жанра Tower Defense (часть 1)

Reading time7 min
Views68K
В данной статье речь пойдет о принципах вычисления баланса в нашей игре жанра Tower Defense (TD), которую мы выпустили летом 2012г. для платформ iOS и Android. Мы расскажем, c какими сложностями и ограничениями пришлось столкнуться, каков был ход мыслей геймдизайнера при выборе того или иного решения, и как был получен конечный результат.

Достижения игры
1. побывала в топ6 и топ7 в категориях US Appstore;
2. занимала топ1 категорий и топ7 overall в RU Appstore;
3. «письмо счастья» от Apple;
4. 425 000 закачек;
5. 5 звезд (средняя оценка для всех магазинов);
6. множество положительных комментариев;
7. обзоры на ведущих мировых мобильных порталах.


Читать дальше →
Total votes 76: ↑64 and ↓12+52
Comments59

C++ Russia в Санкт-Петербурге

Reading time1 min
Views10K

Всем привет!

Мы закончили обрабатывать видео с конференции C++ Siberia 2015 и собрали их в плейлисте на youtube. Также они доступны на странице конференции.

А ещё у нас есть замечательные новости про конференцию C++ Russia 2016 в Санкт-Петербурге. Вкратце: все будет очень круто.


Читать дальше →
Total votes 34: ↑33 and ↓1+32
Comments10

Information

Rating
Does not participate
Registered
Activity