Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Рефакторинг хранения ссылок в индексе #1746

Merged
merged 3 commits into from
Oct 8, 2021

Conversation

nixel2007
Copy link
Member

@nixel2007 nixel2007 commented Jul 30, 2021

Описание

Связанные задачи

Closes:

Чеклист

Общие

  • Ветка PR обновлена из develop
  • Отладочные, закомментированные и прочие, не имеющие смысла участки кода удалены
  • Изменения покрыты тестами
  • Обязательные действия перед коммитом выполнены (запускал команду gradlew precommit)

Для диагностик

  • Описание диагностики заполнено для обоих языков (перевод на английский не обязателен)

Дополнительно

@nixel2007 nixel2007 force-pushed the feature/in-memory-db-references branch from 7f54caa to 660944c Compare July 30, 2021 07:01
@nixel2007 nixel2007 marked this pull request as draft July 30, 2021 07:06
@nixel2007 nixel2007 force-pushed the feature/in-memory-db-references branch 3 times, most recently from 1465f69 to d714b48 Compare August 6, 2021 12:53
@nixel2007
Copy link
Member Author

Возможно имеет смысл заменить H2 на key-value repository поверх concurrent hash map.

https://docs.spring.io/spring-data/keyvalue/docs/2.5.4/reference/html/#reference

/cc @asosnoviy @qtLex @otymko

@asosnoviy
Copy link
Member

Возможно имеет смысл заменить H2 на key-value repository поверх concurrent hash map.

https://docs.spring.io/spring-data/keyvalue/docs/2.5.4/reference/html/#reference

/cc @asosnoviy @qtLex @otymko

я за, H2 не нужен тут

@qtLex
Copy link
Contributor

qtLex commented Aug 20, 2021

Возможно имеет смысл заменить H2 на key-value repository поверх concurrent hash map.

https://docs.spring.io/spring-data/keyvalue/docs/2.5.4/reference/html/#reference

/cc @asosnoviy @qtLex @otymko

Выглядит хорошо. С производительностью не понятно как будет.

@nixel2007
Copy link
Member Author

С производительностью не понятно как будет

в теории должна быть выше h2

@nixel2007 nixel2007 force-pushed the feature/in-memory-db-references branch from c0a7cee to 451a558 Compare September 21, 2021 10:26
@nixel2007 nixel2007 added this to the 0.20.0 milestone Oct 6, 2021
@nixel2007 nixel2007 marked this pull request as ready for review October 6, 2021 22:26
@nixel2007
Copy link
Member Author

За основу взята идея разбиения общего хранилища данных на независимые jpa-репозитории с микродтохами, но вместо spring-data и h2 хранение производится в конкуррентных хэш-мапах.

@nixel2007
Copy link
Member Author

nixel2007 commented Oct 6, 2021

Помимо общего рефакторинга и подготовке к хранению ссылок на глобальные методы и переменные, рефакторинг несет с собой еще и оптимизацию за счет отказа от synchronized-блока и использования конкурретных коллекций.
текущий девелоп - 74.27
фича бранч - 72.88729961713155

чем больше ядер, тем сильнее будет разница.

@sonarcloud
Copy link

sonarcloud bot commented Oct 6, 2021

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 1 Code Smell

100.0% 100.0% Coverage
0.0% 0.0% Duplication

@EvilBeaver EvilBeaver removed their request for review October 8, 2021 07:58
@nixel2007 nixel2007 merged commit 7f903c8 into develop Oct 8, 2021
@nixel2007 nixel2007 deleted the feature/in-memory-db-references branch October 8, 2021 17:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants