1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/FishGoddess-cachego

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
FUTURE.md 8.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 04:24 c0bccfe

Будущие версии: новые функции (Features in future versions)

v0.6.x

  • Рефакторинг кода, оптимизация стиля кода, упрощение части кода и комментариев.
  • Улучшение системы мониторинга и отчётности, предоставление дополнительных методов для запроса информации о кэше.

v0.5.x

  • Предоставление метода для очистки и установки значений по умолчанию, что упрощает замену данных в полном объёме по расписанию. В настоящее время не найдено подходящего дизайна для добавления этой функции, и она не является крайне необходимой. Бизнес-процессы могут справиться с этой задачей, поэтому пока её не добавляют.

v0.4.x

  • Разработка интерфейса Cache, использование bool в методе Get для определения. Использование структуры блокировки для одного элемента.
  • Реализация ShardingCache, которая реализует интерфейс Cache и уточняет детализацию блокировки.
  • Предоставление различных реализаций интерфейса, включая standard, lru, lfu и другие.
  • Добавление метода load для интеграции singleflight при загрузке данных.
  • Использование механизма option для операций, установка значений ttl, значений по умолчанию и максимального количества итераций с использованием option.
  • Изменение метода Delete на Remove и возвращение удалённого значения.
  • Замена метода DeleteAll на Reset.
  • Сохранение метода GC, удаление метода AutoGC.
  • Проверка кода pkg, улучшение модульного тестирования и повышение покрытия.
  • Удаление ненужных комментариев, улучшение примеров и тестов производительности.
  • Внедрение механизма отчётности для мониторинга состояния кэша.
  • Извлечение now и hash до уровня конфигурации кэша.
  • Обеспечение механизма времени ожидания кэширования, возможность выбора быстрых часов.
  • Увеличение количества конфигураций имён кэша, в основном для различения источников данных каждого мониторинга.
  • Расширение Reporter методом количества сегментов кэша, главным образом для мониторинга количества сегментов кэша.
  • Расширение Reporter методом типа кэша, главным образом для мониторинга использования различных типов кэша.
  • Добавление механизма защиты от проникновения для несуществующих данных. На практике этот механизм лучше обрабатывается бизнес-стороной, поэтому его исключают.

v0.3.x

  • Поддержка ограничения размера памяти, предотвращение неограниченного использования памяти.
  • Поддержка пользовательских стратегий обработки при достижении ограничения памяти.
  • Поддержка ограничения количества кэша, предотвращение переполнения данных, приводящего к снижению производительности хэширования.
  • Поддержка пользовательских стратегий обработки при достижении предела количества.
  • Исключение метода GetWithTTL.
  • Перепроектирование метода AutoSet с введением механизма option.
  • Включение механизма singleflight.
  • Включение механизма мониторинга, форма интерфейса.
  • Оптимизация использования значений, повторное использование памяти и улучшение читаемости кода.
  • Введение ограничений на количество или время GC.
  • Введение механизма option в методы Set.
  • Введение механизма option в методы Get.
  • Введение механизма option в метод Delete, с возможностью ограничения количества удалений и режима сопоставления ключей.
  • Введение механизма option в механизм GC, с возможностью ограничения количества или времени GC и режима сопоставления ключей.

v0.2.x

  • Требуется улучшить способ создания экземпляров кэша.
  • Оптимизация производительности — введение пула экземпляров значений. Тестирование показало, что пул экземпляров не приводит к повышению производительности, а наоборот, влияет на производительность записи, указывая на то, что текущий узкое место производительности не связано с созданием экземпляров. Поэтому эта функция была отменена.
  • Добавление точек отладки сети в режиме debug.
  • Концепция AutoSet для автоматической загрузки данных в кэш по расписанию.

v0.1.0

  • Упрощение дизайна, сейчас я склоняюсь к редизайну.
  • Добавление сегментарной блокировки, использование более детальной блокировки для обеспечения более высокой производительности кэша.
  • Первоначальное совершенствование механизма очистки часового, в сочетании с сегментарной блокировкой, для оптимизации эффективности очистки данных.

v0.0.1

  • Простая реализация безопасного параллельного доступа, поддержка автоматического удаления просроченных данных из кэша.
  • Поддержка ленивой очистки, определение истечения срока действия при каждом доступе.
  • Поддержка очистки часовым, очистка просроченных данных через определённые промежутки времени.
  • Разделение базовых и продвинутых функций в дизайне, снижение сложности обучения для новых пользователей.
  • Дружественный API для цепного программирования, обеспечивающий высокую читаемость кода.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/FishGoddess-cachego.git
git@api.gitlife.ru:oschina-mirror/FishGoddess-cachego.git
oschina-mirror
FishGoddess-cachego
FishGoddess-cachego
master