Этот коммит содержится в:
Ihar Hancharenka 2024-07-23 14:42:40 +03:00
родитель ae2c8b1eec
Коммит 935a44eb74
11 изменённых файлов: 74 добавлений и 8 удалений

Просмотреть файл

@ -7,6 +7,10 @@ https://duckdb.org/docs/
https://duckdb.org/news/
books
AuburyLetcher - Getting Started with DuckDB
1227CFF0C4277383D6AA6D71976ABCA3
2024
https://www.pgrs.net/2024/03/21/duckdb-as-the-new-jq/
https://www.postgresql.org/docs/current/functions-json.html

Просмотреть файл

@ -1,6 +1,26 @@
Если мы хотим, чтобы наша база данных работала эффективно и производительно, то за ней нужно следить, выявлять неоптимальные запросы и различные аномалии. В этом нам и поможет представление pg_stat_all_tables.
*********************************************************************************************
Например, с помощью вот такого запроса мы можем найти топ 5 таблиц, по которым чаще всего происходило последовательное сканирование:
pg_stat_all_tables покажет нам статистику по всем таблицам базы данных (системным и пользовательским), покажет кол-во последовательных и индексных сканирований, операций по удалению, обновлению и вставки строк, а также кол-во "мертвых" строк и статус операций VACUUM и ANALYZE. Короче очень полезно представление 🤓
SELECT
schemaname, relname,
seq_scan, seq_tup_read,
seq_tup_read / seq_scan as avg_seq_tup_read
FROM pg_stat_all_tables
WHERE seq_scan > 0
ORDER BY 5 DESC LIMIT 5;
Зная, какие запросы выполняются к таким таблицам, можно вычислить неоптимальный запрос.
Если предыдущие запросы не дали ни каких результатов и у вас все хорошо оптимизированно,
то подсказу может дать колонка calls в представлении pg_stat_statements.
Эта колонка покажет как часто вызывался запрос.
Может случится так, что запрос вызывается слишком часто из-за каких-то сбоев в приложении или неоптимального кода, что приводит к сильной загрузке CPU
*********************************************************************************************
Если мы хотим, чтобы наша база данных работала эффективно и производительно, то за ней нужно следить, выявлять неоптимальные запросы и различные аномалии.
В этом нам и поможет представление pg_stat_all_tables.
pg_stat_all_tables покажет нам статистику по всем таблицам базы данных (системным и пользовательским), покажет кол-во последовательных и индексных сканирований,
операций по удалению, обновлению и вставки строк, а также кол-во "мертвых" строк и статус операций VACUUM и ANALYZE. Короче очень полезно представление 🤓
Давайте рассмотрим несколько полезных запросов к этому представлению.
@ -80,4 +100,6 @@ n_dead_tup DESC;
Запрос покажет кол-во "мертвых" строк на таблицах, а также время последнего прихода AUTOVACUUM в таблицу.
Как видите представление pg_stat_all_tables очень полезно для анализа статистики таблиц баз данных PostgreSQL. Конечно это не все возможные полезные запросы к этому представлению, в будущих постах будем публиковать и другие запросы, которые смогут на помочь в деле оптимизации производительности PostgreSQL 🧐
Как видите представление pg_stat_all_tables очень полезно для анализа статистики таблиц баз данных PostgreSQL.
Конечно это не все возможные полезные запросы к этому представлению, в будущих постах будем публиковать и другие запросы,
которые смогут на помочь в деле оптимизации производительности PostgreSQL 🧐

Просмотреть файл

@ -1,3 +1,6 @@
2024
OTUSOnlineEdu - Lavlinskiy - Linux Network Diagnostics Utilities 10:00 of 1:48:33
https://www.youtube.com/watch?v=o5aEP_9VYm8
2022
ByteByteGo - What is OSI Model | Real World Examples of 4:44
https://www.youtube.com/watch?v=0y6FtKsg6J4

8
pl/cpp/libfws/math/geometry/cgal.txt Обычный файл
Просмотреть файл

@ -0,0 +1,8 @@
https://www.cgal.org/
https://github.com/CGAL/cgal
https://doc.cgal.org/latest/Manual/index.html
https://cgal.geometryfactory.com/CGAL/doc/master/Manual/index.html
https://cgal.geometryfactory.com/CGAL/testsuite/
https://github.com/CGAL/cgal/wiki/Guidelines

Просмотреть файл

@ -1,5 +1,5 @@
2024
JPoint - Volyhin - System Design Interview ru 38:00 of 49:46
JPoint - Volyhin - System Design Interview ru of 49:46
https://www.youtube.com/watch?v=RAMWRgt-3G0
! functional req - answer q "what"
! non-functional req - answer q "how much"
@ -8,6 +8,8 @@ JPoint - Volyhin - System Design Interview ru 38:00 of 49:46
! snowflake-param, ? id-generator
! uuid approach bad: it is not long, big, random, not ordered
! snowflake: 64b, 41b timestamp, 10b workder_id, 12b counter
! 41:00 - bucket4j - token bucket algo
! 43:00 - geohash, quadtree
2023
JPoint - Maslov - System Design of 46:38
https://www.youtube.com/watch?v=popkBBjbAv8

Просмотреть файл

@ -1,9 +1,23 @@
https://github.com/heynickc/awesome-ddd
books
2021
Vlad Konovalov - Learning Domain-Driven Design
4F6FC3E2CE3FB49FDA969A126A42C899
7F73B4FDC4241131CD44C7DEE74272B3
2024
SpringIO - Implementing Domain Driven Design with Spring by Maciej Walkowiak 37:00 of 50:17
https://www.youtube.com/watch?v=VGhg6Tfxb60
https://speakerdeck.com/maciejwalkowiak/implementing-domain-driven-design-with-spring
https://github.com/maciejwalkowiak/implementing-ddd-with-spring-talk
2023
Devoxx - REST next level : Crafting domain driven web APIs By Julien Topçu 0:00 of 50:52
https://www.youtube.com/watch?v=bHc8Gudrhdo
2022
SpringIO - Getting modules right with Domain-driven Design by Michael Plöd @ Spring I/O 2022 0:00 of 47:04
https://www.youtube.com/watch?v=Q_0XW46IlHY
https://speakerdeck.com/mploed/getting-modules-right-with-domain-driven-design?slide=89
https://learn.microsoft.com/ru-ru/dotnet/architecture/microservices/microservice-ddd-cqrs-patterns/
2020
https://habr.com/ru/companies/dododev/articles/489352/

Просмотреть файл

@ -1,5 +1,5 @@
2024
SpringIO - IntelliJ IDEA Tips and Tricks for Spring Developers by Anton Arhipov 15:00 of 56:15
SpringIO - IntelliJ IDEA Tips and Tricks for Spring Developers by Anton Arhipov 29:00 of 56:15
https://www.youtube.com/watch?v=1kum1N_-cb0
https://www.jetbrains.com/idea/spring/
C-E - Recent Files (with shortcuts)

Просмотреть файл

@ -6,6 +6,9 @@ https://github.com/MarcGiffing/bucket4j-spring-boot-starter-examples
https://bucket4j.com/7.5.0/toc.html
2024
https://medium.com/dandelion-tutorials/rate-limiting-with-bucket4j-for-spring-boot-web-1a42af2b8b80
https://www.baeldung.com/spring-bucket4j
2022
JPointJokerAndJUGRu - Bartkov - Complex Rate-Limiting is Just a Bucket4j 0:00 of 48:25
https://www.youtube.com/watch?v=OSNFNxgZZ3A
@ -18,8 +21,6 @@ https://online-journals.org/index.php/i-joe/article/view/25641
https://virendraoswal.com/rate-limit-apis-with-bucket4j-via-java
https://github.com/cycorax12/basic-bucket4j-demo
https://github.com/cycorax12/basic-bucket4j-demo/blob/main/server/src/main/java/in/virendra/oswal/server/ServerApplication.java
2020
https://www.baeldung.com/spring-bucket4j
2019
https://golb.hplar.ch/2019/08/rate-limit-bucket4j.html
????

Просмотреть файл

@ -1,5 +1,5 @@
2024
JPoint - Ilya and Fedor Sazonov - DB Tamer 22:00 of 48:02
JPoint - Ilya and Fedor Sazonov - DB Tamer of 48:02
https://www.youtube.com/watch?v=mIxr65ZGGFw
https://www.youtube.com/watch?v=1T5LjQaWGhQ
! 5:20 it is recommended to set hbm logs (vs show_sql=true)
@ -23,6 +23,10 @@ JPoint - Ilya and Fedor Sazonov - DB Tamer 22:00 of 48:02
! @Transactional
! void deleteAllRows();
! ... void deleteAllInBatch();
! 36:20 - Valkov - PG for Java Developers
! https://www.youtube.com/watch?v=mIxr65ZGGFw
! hikari
! 43:00 pgBouncer ?
Amplicode - Lombok Problems with Spring Data JPA 0:00 of 12:00
https://www.youtube.com/watch?v=7kdQTh4oOQM
Build faster persistence layers with Spring Data JPA 3 by Thorben Janssen @ Spring I/O 2024 0:00 of 49:49

Просмотреть файл

@ -0,0 +1,4 @@
2024
https://vladmihalcea.com/java-enum-custom-values/
2023
https://vladmihalcea.com/the-best-way-to-map-an-enum-type-with-jpa-and-hibernate/

Просмотреть файл

@ -5,6 +5,10 @@ https://micrometer.io/docs/observation
https://github.com/eugenp/tutorials/tree/master/spring-boot-modules/spring-boot-3-observation
2024
SpringIO - Micrometer Mastery: Unleash Advanced Observability in your JVM Apps by Tommy Ludwig & Jonatan Ivanov 0:00 of 44:38
https://www.youtube.com/watch?v=Qyku6cR6ADY
https://speakerdeck.com/jonatan_ivanov/2024-05-31-spring-io-micrometer-mastery-unleash-advanced-observability-in-your-jvm-apps
https://github.com/jonatan-ivanov/teahouse/tree/2024-springio
https://medium.com/javarevisited/tracing-in-spring-boot3-097205dc08f4
2023
https://www.baeldung.com/spring-boot-3-observability