All streams
Search
Write a publication
Pull to refresh
-3
-0.1
Алексей @Agb

Java

Send message
Почитал JLS.
Я не прав, в JLS не указывается, что загрузка идет обязательно в один поток.

Трансформер, из документации, срабатывает не в момент загрузки класса, а в магической инициализации класса нативным методом defineClass1, в синхронизированном по дефолту блоке loadClass.
Получается, если в приложении больше 1 потока и больше одного кастомного класслоадера грузят классы параллельно (обычно такое происходит намеренно), может получиться, что defineClass от разных класслоадеров будут вызываться из разных потоков.
Доступ к статическому count не защищен барьером на чтение/запись, будет гонка независимо от того, как реализованы класслоадеры.

Вообще, конечно, без эксперимента сложно уверенно судить о потокобезопасности трансформера. Лезть глубоко в jvm охоты нет.
Загрузка идет в один поток. Иначе не работал бы static initializer, например. В JLS написано.
Скорей 791.
Enum — лучший синглтон.
Джошуа Блох.
… чтобы удовлетворить всех участников информационного обмена: шину, ETL-скрипты, обслуживающие процедуры реального времени, макросы в Экселе, космическую станцию и пр.

Забыли добавить: "… и небо, и Аллаха!"

А по сути:
Основное назначение Перекодера — хранить в себе копии справочников исходных систем и перекодировки между ними.

Хранить копии справочников всех систем, не похоже на децентрализацию, наоборот, похоже на ленивую-МДМ, у которой избыточность в данных, необходимость синхронизации со всех сторон, еще и мепинг.

Так ли плоха традиционная схема:

— МДМ-система с разными справочниками и классификаторами, которые являются эталонными и имеют все нужные атрибуты у объектов-записей этих контейнеров. Интегрированные сторонние системы имеют на своей стороне нужные полные/частичные копии эталонных справочников, имеют синхронизации.
— Обмен данными осуществляется в едином формате для каждого справочника/классификатора, либо разных, но «перекодировка» осуществляется централизованно, на шине, например.
— Изменение эталонных данных в МДМ-системе осуществляется в наборе воркфлоу или прозрачных потоков изменения данных для нужных интегрированных систем
— Сама МДМ-система заботится о уведомлениях об изменениях в нужные системы.

Плюс ко всему, получаем полнотекстовый поиск по всем данным «из коробки»


Этот плюс, получается, не плюс, а необходимость, когда нет мастер-данных.
"… настоящего программиста на лиспе..."
Fix
Отличные видео в разделах курсов, интро креативное.
Прошел, курс показался ну совсем не сложным, хотя я ангулар до этого ни разу не трогал.

Спасибо за ссылку на курс все равно.
Блох писал: «Делайте внутренние классы нестатическими лишь при крайней необходимости...»
Почему многие ругают вебсферу, не пойму. Все описанное здесь просто и понятно. Если захотеть, наверняка то же самое и на jython-е можно заскриптовать.
Прям идея для голливудского блокбастера. Почему еще никто не снял такой фильм!
Ясно. Полагаю, на вашу ситуацию тоже анттаск накатать можно было.
Не совсем ясно, вы хотите чтобы обновлялись файлы на сервере файлами локальной копии или наоборот?
У маня была проблема с первым — нужно в процессе разработки постоянно обновлять скомпилированные файлы классов java на сервере, дев или тест. Руками делать это устал и состряпал небольшой ант-таск: по нажатию комбинации клавиш идет соединение с сервером и происходит добавление или обновление классов. Сами исходники под версионным контролем, естественно.
Вы правы, проверил — в чисто адресных данных нет ни одного кладра, соответствующего двум фиасам. Почему-то был уверен, что видел.
С другой стороны, есть несколько тысяч классов фиас без непосредственно кладра — улицы в разных СНТ (Причем, у самих СНТ есть кладр). Например, 14ff9956-c526-4f04-8907-70c0a7e6f123, 446200, Самарская обл, Новокуйбышевск г, СДТ Огонек снт, 3-й кв-л.

Например, как бьется введенная произвольная строка с пользовательскими данными — словари, паттерны, алгоритмы. Как ищутся дубликаты в уже существующих пользовательских данных — приемы DataQuality, нечеткий поиск, расстояния. Про свой ФАКТОР расскажите, что инновационного в нем придумали, какие существующие решения/библиотеки были использованы.

Не так много есть информации на русском по качеству данных, а поле применения широкое.
Обновления на фиас выходят еженедельно.
Не могу возразить по соответствию адресов, но могу сказать, что одному коду кладр может соответствовать 2 кода фиас.
Статья интересна для тех, кому нужно готовое. Написали бы еще обзорную статью по нормализации данных.
Если не ошибаюсь, кладр уже устарел и сейчас стоит начать пользоваться классификатором ФИАС. Почему не выбрали его?
… но покамест мне не известно ни одной книги, аналогичной книге Банды Четырех

Знаю пару книжек:
functional-programming-patterns-in-scala-and-clojure — GOF через скалу/clojure + функциональные паттерны.
clojure-for-domain-specific-languages DSL на кложуре

Последним кто обиделся был Слоупок.

Information

Rating
Does not participate
Location
Россия
Registered
Activity