ThunderCat, этим летом мы загружали мета-данные о товарах очень крупной торговой сети.
И мы загружали их из BigData в Redis в формате JSON чтоб веб приложение бытро отрисовывало
описания товаров на сайте. Размер документов порядка 1 килобайта.
Из недостатков - я-бы отметил - микроменеджмент тасок в JIRA. Бывают такие бизнес-владельцы которые
любят влезть тректинг часов и минут и могут очень долго долбать специалистов отчетами вроде
что было сделано за вторую половину пятницы и т.п.
Это конечно сильно стрессит. Но с другой стороны можно и бизнесу забить баки созданием
Spikes, Investigations e.t.c. и прочими задачами которые все равно никто не знает как оценивать
а вы будете это время тратить просто на чтение интернета. И честно логгировать типа - искал
как согласовать два разных протокола на базе имеющейся платформы и библиотек.
MishaXXL, практически всегда одинаково. Сделать ROLLBACK для бизнес-операции.
Если у вас более сложные паттерны типа Saga, то сделать набор контр-действий которые
нейтрализуют ошибку.
Вообще вам не стоит сильно циклиться на обработке самих кодов. В 99% разработчик
знает в чем может быть проблема и фокусируйтесь только факте генерации SQLException.
А код ошибки и месседж можете просто скинуть в лог-файл для истории.
Black_sun_1906, нам с этой информации нет никакой пользы.
Смотри, если у тебя есть сложный алгоритм - то упрости задачу.
Пускай он распознает не лица а геометрические фигуры разных
цетов.
Пойди от простого к сложному.
Если ты систему сам обучал - то как ты проверял сходимость этой системы?
Она должна была повышать качество узнавания. У тебя должен был
быть асмимтотический график.
MishaXXL, синглтон должен быть всегда один. В этом его суть. Это - контроль над ресурсами.
Поэтому в синлтоне запрещен конструктор. Иначе любой сможет создавать бесконечное число
объектов синлтона. А это противоречие пункту первому.
Кроме того что это объект в количестве одной штуки, еще и это должен быть Safe-Threaded объект.
Тоесть если ты заказал обращение к синглтону из двух потоков - логика синглтона не должна
быть сломана. И в то-же время не должно быть сильной просадки по производительности.
Если мы будем 100 000 раз в секунду обращаться к getInstance.
Почитай про AtomicRef и про синглтон на базе nested class.
Я-бы предположил что есть хорошая практика разделения логики. База - ничего не знает о дизайне. PHP (приложение) - ничего не знает о типе источника данных (может это БД а может NoSQL система а может
и Rest сервис).
Поэтому твоя задача сводится к написанию одной функии которая выводит строки. На вход
приходит одна строка. И на выходе - строка с дизайном с переносами и так далее.
И мы загружали их из BigData в Redis в формате JSON чтоб веб приложение бытро отрисовывало
описания товаров на сайте. Размер документов порядка 1 килобайта.