powered by simpleCommunicator - 2.0.29     © 2024 Programmizd 02
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / Тяпничный список инжекторных движков
25 сообщений из 130, страница 3 из 6
Тяпничный список инжекторных движков
    #40058357
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asv79

Код: java
1.
2.
3.
    volumes:
      - database-data:/var/lib/postgresql/data/
      - ./init.sql:/docker-entrypoint-initdb.d/init.sql



А это зачем ты так сделал?
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058375
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolchanov

Наш опыт на наших реальных микросервисах, а не на "сферическом коне в вакууме", показывает улучшение время старта в 10-30 раз на quarkus.
На другой исходной кодовой базе с другими программистами эта пропорция будет другой.


Ну на моем опыте единственное, что тормозит в Spring это Hibernate :-)
Поднятие контекста Hibernate занимает всё время поднятие контекста Spring.

Но за счет кучи синтаксического сахара и множества декларативных аннотаций небольшие "прикладушки на коленке" пишутся на нем быстро.
Быстрее, возможно, только на Python.

При этом эту "прикладушку" при минимуме усилий можно превратить в самонастраиваемую библиотеку.
Которая будет работать при добавлении её как зависимость в другое приложение.

Единственное Hibernate всё портит.
Но отказаться от Spring-Data-Jpa очень трудно. :-)
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058405
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
asv79

Код: java
1.
2.
3.
    volumes:
      - database-data:/var/lib/postgresql/data/
      - ./init.sql:/docker-entrypoint-initdb.d/init.sql



А это зачем ты так сделал?

помоему это для того что бы там дата хранилась,в примере из ссылки такое есть и на бою
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058423
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,самое интересное что я сейчас защел в консоль контейнера с пострегрес и посмотрел - может там нет базы ,которая создается в init.sql ,но база есть.
получается приложение не может его увидеть потому что смотрит не туда- вопрос где что я не так прописал - может в application.yml фиг его знает
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058444
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты говорил что хочешь постгрес в докерную файловую систему. А здесь ты фактически выводишь ее БД
из области докера в свой локальный диск. Я не говорю что это неправильно. Просто это немного переворачивает
постановку начального развертывания БД.
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058461
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Ты говорил что хочешь постгрес в докерную файловую систему. А здесь ты фактически выводишь ее БД
из области докера в свой локальный диск. Я не говорю что это неправильно. Просто это немного переворачивает
постановку начального развертывания БД.

не ,там все вообще не так - никто ничего никуда не выводит - все в докере крутится
вообщем прикол в том,что докер компос делает все за нас- ему не нужны никакие инит файлы
достаточно прописать юзера и он создаст одноименню с ним базу
я убрал инит файл,добавил application.yml
в эту строчку url: jdbc:postgresql://${DB_SERVER_HOST:localhost}:${DB_SERVER_PORT:5432}/${DB_NAME:testdb}
и в композе

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
services:
  postgres:
    image: postgres:13-alpine
    restart: unless-stopped
    networks:
      - testdb-net
    environment:
      - POSTGRES_USER=testdb
      - POSTGRES_PASSWORD=testdb
    volumes:
      - database-data:/var/lib/postgresql/data/
    ports:
      - "5432:5432"


И Все заработало-ошибка была в том ,что я пытался в инит файле создать базу и в апл.ямл прописал к ней путь
а в это время докер композ создал бд с именем идентичным POSTGRES_USER=testdb

это конечно не очень правильно наверно - скорей всего если убрать environment:
то тогда подхватится init.sql
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058463
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У тебя инициализация БД должна происходить каждый раз при compose up или тебе надо 1 раз в жизни создать
объекты и с ними жить. Это очень разные постановки и от этого надо исходить.
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058466
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
У тебя инициализация БД должна происходить каждый раз при compose up или тебе надо 1 раз в жизни создать
объекты и с ними жить. Это очень разные постановки и от этого надо исходить.

мне просто нужно сделать пример как тут
https://medium.com/@isurunuwanthilaka/docker-zero-to-hero-with-springboot-postgres-e0b8c3a4dcc
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058496
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вроде разобрался с докер копомз
теперь непонятно другое - я дропаю базу контейнер - потом создаю заново но у меня там уже есть данные в базе и база новая не создается- это какой то прикол докера или в чем проблема?
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058531
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это то о чем я тебе говорил. У тебя база будет спокойно переживать убийство контейнера. Потому что она - физически
лежит на твоем диске.
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058579
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй убери вообще эту желтую строчку что я выделил маркером.
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058614
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Это то о чем я тебе говорил. У тебя база будет спокойно переживать убийство контейнера. Потому что она - физически
лежит на твоем диске.

ну в принципе это нормально- вопрос в том как очистить это все - я не вижу таких директорий у себя
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058619
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну если ты напишешь так

Код: java
1.
- /home/stas/database-data:/var/lib/postgresql/data/



То это будет абсолютный путь. Тогда и найдешь. Абсолютные пути для баз данных это нормально.
Не намусоришь случайно нигде.
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058620
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все таки ты не прав майтон
нет на диске такой директории- нет у меня постгреса локально и директорий таких тоже нет
все облазил сейчас
а вот как раз в докер контейнере с постгрес такая директория присуствует
откуда берется БД и как сохраняются значения после удаления контейнера - большой вопрос - похоже это что то типо кеша докеровского или же что то типо гита - других мыслей у меня нет

пс.если эту строчку убрать ты не сможешь бд созадть - эта команда прописывает путь где сторить бд у тебя в контейнере
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058626
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Ну если ты напишешь так

Код: java
1.
- /home/stas/database-data:/var/lib/postgresql/data/



То это будет абсолютный путь. Тогда и найдешь. Абсолютные пути для баз данных это нормально.
Не намусоришь случайно нигде.

нет у меня такой директории как database-data
я не знаю может это особенности какие то облачные- я работаю не на компе ,а на удаленном сервере( взял на отпуск помучать яндекс.клауд)
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058627
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asv79
mayton
Ну если ты напишешь так

Код: java
1.
- /home/stas/database-data:/var/lib/postgresql/data/



То это будет абсолютный путь. Тогда и найдешь. Абсолютные пути для баз данных это нормально.
Не намусоришь случайно нигде.

нет у меня такой директории как database-data
я не знаю может это особенности какие то облачные- я работаю не на компе ,а на удаленном сервере( взял на отпуск помучать яндекс.клауд)

Windows?
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058629
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
asv79
пропущено...

нет у меня такой директории как database-data
я не знаю может это особенности какие то облачные- я работаю не на компе ,а на удаленном сервере( взял на отпуск помучать яндекс.клауд)

Windows?

линукс конечно- спецом и взял чтобы немного знаний поднять по линукс и девопсятине)
короче нашел я где эта дичь лежала
в докере в volumes
нужно сделать
Код: java
1.
 docker system prune --volumes


и будет счастье
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058633
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это очистка образов. Ты уверен что правильно понял что ты делаешь и зачем?
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058636
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Это очистка образов. Ты уверен что правильно понял что ты делаешь и зачем?

это не очистка образов это удаление всего
всех контейенеров,образов,нетворков,волумов,билд кешей вот так будет правильней звучать

пс.вроде да разобрался что к чему
1.файл инит не нужен - база будет создана из того что пропишешь при создании контейнера
2.инит файл нужен для таких вещей как напрмиер create extension if not exist "uuid-ossp"
3.нужно правильно прописиывать переменные окружения в application.yml и в докер- композе
4.волум - сторит нашу дату- что в приницпе логичено не каждый же раз ее дропать при рестарте контейнера

где физически лежит волум - в нашем случае постгрес дата - судя по всему в докере ,но вне контейнеров( но это не точно- тут нужно мнение профессионалов- я таких директорий на своем серваке не нашел - причем понятно что смотрел все и скрытые)
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058641
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по волумам вот такой ответ

Volumes are stored in a part of the host filesystem which is managed by Docker ( /var/lib/docker/volumes/ on Linux). Non-Docker processes should not modify this part of the filesystem. Volumes are the best way to persist data in Docker
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058643
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не знаю как устроено яндек-облако. Но если сравнивать его с AWS, то для докеров там делается
отдельная услуга. Вобщем ты на одной VirtualPrivateService или EC2 поднимаешь весь оркестр.
А так не делается. Дорого для ресурсов. Должна быть отдельная услуга наподобие ECS, и ты после
компилляции образа его туда заливаешь

Код: java
1.
2.
docket tag ...
docker push ... 


Там отдельный репо создается. Креды к нему и прочее.

Для тебя его полезный эффект будет в виде еще одного экспоуз сетевого порта и все. Больше ничего
не будет. Ни операционки. Ни bash консоли.

Ну а виртуальный приватный хост будет уже чисто для твоего приложения.
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40058655
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Я не знаю как устроено яндек-облако. Но если сравнивать его с AWS, то для докеров там делается
отдельная услуга. Вобщем ты на одной VirtualPrivateService или EC2 поднимаешь весь оркестр.
А так не делается. Дорого для ресурсов. Должна быть отдельная услуга наподобие ECS, и ты после
компилляции образа его туда заливаешь

Код: java
1.
2.
docket tag ...
docker push ... 


Там отдельный репо создается. Креды к нему и прочее.

Для тебя его полезный эффект будет в виде еще одного экспоуз сетевого порта и все. Больше ничего
не будет. Ни операционки. Ни bash консоли.

Ну а виртуальный приватный хост будет уже чисто для твоего приложения.

в моем случае яндекс .облако - обычная виртуалка ,которую я использую в качестве сервака
для докера в мое конкретном случае там нет ничего -так как это триал версия - взял погонять чтобы вкусить весь путь от пуша до развертывания на кубернетис - чо то меня прям это все увлекло ,да так что в отпуске залипаю на 12 часов у компа)
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40061341
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробую смигрировать один проект с Guice на Dagger2.

У задачи нет сроков. Она - игрушечная поэтому могу играться с ней бесконечно. Без лимитов по времени.
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40064259
Dmitry Eliseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почему в опросе нет трушного CDI ?
...
Рейтинг: 0 / 0
Тяпничный список инжекторных движков
    #40064481
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry Eliseev
Почему в опросе нет трушного CDI ?


Потому что поциент скорее мертв, чем жив?!
<:o)
...
Рейтинг: 0 / 0
25 сообщений из 130, страница 3 из 6
Форумы / Java [игнор отключен] [закрыт для гостей] / Тяпничный список инжекторных движков
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]