Канал для программистов и разработчиков, которые хотят стать настоящими архитекторами информационных систем. О программировании на платформе .NET и не только на NET. А также принципы, правила, тенденции, советы и обмен мнениями. Интересные ссылки, советы по реализации, обучение, рефакторинг и многое
Jetbrains закрывает IDE JetBrains объявила о закрытии Аqиа. Аquа больше не будет развиваться как отдельный продукт, её функциональность сохранится в виде плагина Test Automation.
У нас был один класс под названием UserManager Он занимался всем: → Регистрацией пользователей. → Проверкой паролей. → Отправкой приветственных писем. → Логированием событий. → Обновлением информации профиля. Прошло много времени, и наш класс перестал работать... Любое изменение становилось рискованным. Небольшое изменение в одном методе ломало другой. Юнит-тесты были в хаосе. Никто не хотел к нему прикасаться. Вот тогда все мы осознали по-настоящему что есть "Принцип единственной ответственности" (SRP): Класс должен иметь только одну причину для изменения Это не просто набор...
Размер базы данных PostgresQL Чтобы получить физический размер файлов хранилища) базы данных, используем следующий запрос: SELECT pg_database_size(current_database(); Результат будет представлен как число вида 41809016. current_database() — функция, которая возвращает имя текущей базы данных. Вместо неё можно ввести имя текстом: SELECT pg_database_sizef"my_database'); Для того, чтобы...
Сегодня покажу вам простой, но крайне полезный приём, как находить “тяжёлые” запросы в PostgreSQL, которые тормозят базу. Если у вас база под нагрузкой, и “что-то всё стало медленно”, первым делом проверьте: SELECT pid, now() - query_start AS duration, query FROM pg_stat_activity WHERE state = 'active' ORDER BY duration DESC LIMIT 5; Этот запрос показывает топ-5 самых долгих активных запросов. Обратите внимание на query_start — именно он поможет понять, кто завис и тормозит остальных. А если хотите посмотреть историю медленных запросов за последние часы/дни — подключайте pg_stat_statements:...