• Как делается проверка новых сообщений в вк?

    @aatimin
    Посмотрите в сторону web-socket. С помощью этой технологии создан чат.
    А примеров реализации в интернете полно найдете.
    Для Node.js, Lua, Php точно есть готовые рабочие примеры
    Ответ написан
    Комментировать
  • Как лучше построить архитектуру веб-приложения?

    @aatimin
    Вы определитесь с объемом горячих данных, наверняка он поместится в оперативку, и pоstgresql будет спокойно эти данные оттуда выбирать, не глупая же субд.

    И предусмотрите шардинг сразу. Заложите изначально масштабирование.

    Горячие данные и архив по-любому надо хранить в разных таблицах.

    В таблицах, нацеленных только на запись, и редкое чтение, вероятно есть смысл совсем не использовать индексы, чтобы они не обновлялись при добавлении новых записей.

    А потом проверите всё под нагрузкой, посмотрите цифры и решите нужен вам редис или нет. Postgres же умеет в оперативке данные кешировать, поэтому надо тестировать конкретно ваш прототип.
    Ответ написан
    Комментировать
  • Поиск ближайших объектов на карте?

    @aatimin
    Mysql?
    Используй Spatial и хранимую процедуру, рассчитывающую расстояние:

    DELIMITER $$

    CREATE DEFINER=`ras`@`%` FUNCTION `distance`(a POINT, b POINT) RETURNS double
    DETERMINISTIC
    BEGIN
    RETURN glength(linestring(a,b));
    -- RETURN round(glength(linestringfromwkb(linestring(a,b))));
    END

    Запусти mysqltunner и доведи конфиги до оптимального состояния.

    В кратце как-то так.
    Ответ написан
    Комментировать