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

OSCHINA-MIRROR/louislivi-smproxy

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README-EN.md

Английский | Китайский

  /$$$$$$  /$$      /$$ /$$$$$$$
 /$$__  $$| $$$    /$$$| $$__  $$
| $$  \__/| $$$$  /$$$$| $$  \ $$ /$$$$$$   /$$$$$$  /$$   /$$ /$$   /$$
|  $$$$$$ | $$ $$/$$ $$| $$$$$$$//$$__  $$ /$$__  $$|  $$ /$$/| $$  | $$
 \____  $$| $$  $$$| $$| $$____/| $$  \__/| $$  \ $$ \  $$$$/ | $$  | $$
 /$$  \ $$| $$\  $ | $$| $$     | $$      | $$  | $$  >$$  $$ | $$  | $$
|  $$$$$$/| $$ \/  | $$| $$     | $$      |  $$$$$$/ /$$/\  $$|  $$$$$$$
 \______/ |__/     |__/|__/     |__/       \______/ |__/  \__/ \____  $$
                                                               /$$  | $$
                                                              |  $$$$$$/
                                                               \______/

SMProxy

Выпуск Форки Звезды Статус сборки Gitter Лицензия SMProxy Поддержка на Open Collective Спонсоры на Open Collective

Swoole MySQL Proxy

База данных MySQL со пула подключений на основе протокола MySQL и Swoole.## Принцип работы

Храните соединение с базой данных как объект в памяти. Когда пользователи нуждаются в доступе к базе данных, соединение будет установлено в первый раз. После этого вместо создания нового соединения свободные соединения будут извлекаться из пула соединений при необходимости пользователей. Также пользователям не требуется закрывать соединение; они должны возвращать его обратно в пул соединений для использования другими запросами.

Все эти вещи, такие как установка и завершение соединения, управляются самим пулом соединений. В то же время вы также можете настраивать параметры пула соединений, такие как:

  • Начальное количество соединений
  • Минимальное / максимальное количество соединений
  • Максимальное количество одновременно активных запросов на соединение
  • Максимальное время простоя соединений

...и так далее.

Также возможно мониторинг количества соединений с базой данных, использования и т.д. через собственную систему управления.

Если максимальное количество соединений превышено, корутин будет приостановлен до тех пор, пока соединение не будет освобождено.

Возможности- Разделение чтения/записи

  • Пул соединений
  • Стандарт SQL92
  • Расписание корутин
  • Множество соединений с базами данных, несколько баз данных, несколько пользователей...
  • Создание с использованием нативного протокола MySQL, многоплатформенного и многоязычного
  • Совместимость с транзакциями MySQL
  • Совместимость с HandshakeV10
  • Совместимость с MySQL версий 5.5 - 8.0
  • Совместимость с различными фреймворками## Почему это важно

По причинам раннего дизайна PHP не имеет встроенного пула соединений. Поэтому количество соединений с базой данных легко увеличивается и достигает максимума при большом количестве запросов. Использование одного из многих промежуточных слоев баз данных, таких как MyCat, может вызвать некоторые ограничения, например, пакетные вставки. И он также слишком тяжёлый в большинстве случаев. Поэтому мы создали SMProxy, используя 100% PHP + Swoole, который поддерживает только пул соединений и разделение чтения/записи, но гораздо легче. В отличие от MyCat, мы пытаемся создать SMProxy с использованием корутин Swoole для расписывания передачи пакетов HandshakeV10, поэтому нам не нужно анализировать все пакеты SQL. Это действительно делает SMProxy более стабильным и надёжным.

Участие и обсуждение

Участники проекта

Этот проект существует благодаря всем людям, которые в него вкладывают. [Участвовать].

Поддержка

Большое спасибо нашим покровителям! 🙏 [Стать покровителем]## Поддержка проекта

Поддержите этот проект, став спонсором. Ваш логотип будет отображаться здесь с ссылкой на ваш сайт. [Станьте спонсором]

Комментарии ( 0 )

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

Введение

Описание недоступно Развернуть Свернуть
MIT
Отмена

Обновления (14)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/louislivi-smproxy.git
git@api.gitlife.ru:oschina-mirror/louislivi-smproxy.git
oschina-mirror
louislivi-smproxy
louislivi-smproxy
master