advicecat
MongoDB MongoDb офигенен. С его geospatial indexes выборка из БД теперь занимает 0,1 секунды, вместо 6 секунд в MySql. Осталось только узнать, как очень быстро рисовать на png круги...
advicecat
PHP ? Жуйк, дай идею. Есть мобильная система, собирающая определенные данные, привязанные к географическим координатам. Эти данные аккуратно передаются на сервер и складываются в mongodb. Затем они должны визуализироваться на гуглокарте в виде кругов на карте разного цвета, размера и прозрачности. Сейчас это сделано тайлами, с отрисовкой на тайле выборки точек при помощи Imagick. Всё работает замечательно, пока этих точек на одном тайле не более пары тысяч. Когда точек на тайле 20000, тайл рисуется примерно 10 секунд, что, естественно, non vagina non reta cogorta. Можно ли как-то оптимизировать?
advicecat
ненависть Juick Android Почему, сцуко, когда я только разобрался с фоновыми процессами в телефоне, которые люто жрали батарейку, и даже успел 2 дня порадоваться, ни разу не подключаясь к зарядке, в андроидожуйкоклиенте запилили фичу с фоновой загрузкой сообщений, которая нихуя не отключается? @ugnich, привет.
advicecat
работа ? Как обьяснить начальству програмерской конторы, что создавать ситуации, в которых приходится задерживаться на работе сверх 8 часов, плохо? (овертаймы в нашей унылой конторе отдельно не оплачиваются)
advicecat
говнокод Кусок проекта:
SELECT
t1.*,
(SELECT
SUM(price)
FROM menu_prices AS t2
WHERE id IN(SELECT
id
FROM menu_prices AS t3
WHERE menu_item_id = t1.id
AND price = (SELECT
MIN(t4.price)
FROM menu_prices AS t4
WHERE t4.price_group_id = t3.price_group_id AND t4.menu_item_id = t3.menu_item_id)
GROUP BY price_group_id)) AS min_price,
(SELECT
SUM(price)
FROM menu_prices AS t2
WHERE id IN(SELECT
id
FROM menu_prices AS t3
WHERE menu_item_id = t1.id
AND price = (SELECT
MAX(t4.price)
FROM menu_prices AS t4
WHERE t4.price_group_id = t3.price_group_id AND t4.menu_item_id = t3.menu_item_id)
GROUP BY price_group_id)) AS max_price
FROM `menu_items` AS t1
WHERE (t1.restaurant_id = 1)
AND (t1.group_id = 3);