>  기사  >  데이터 베이스  >  MySQL 데이터베이스 연결 풀 SPMroxy

MySQL 데이터베이스 연결 풀 SPMroxy

藏色散人
藏色散人앞으로
2019-02-18 11:38:062801검색

Swoole MySQL 프록시는 MySQL 프로토콜을 기반으로 Swoole에서 개발한 MySQL 데이터베이스 연결 풀입니다.

MySQL 데이터베이스 연결 풀 SPMroxy

Principle

사용자가 데이터베이스에 액세스해야 할 때 데이터베이스 연결을 처음으로 연결합니다. 설정된 연결은 유휴 연결 개체에서 가져옵니다. 사용 후 사용자는 연결을 닫지 않고 다음 요청을 위해 연결을 다시 연결 풀에 넣습니다. 연결 설정 및 연결 해제는 연결 풀 자체에서 관리됩니다.

동시에 매개변수를 설정하여 연결 풀의 초기 연결 수, 연결의 상한 및 하한, 각 연결의 최대 사용 횟수, 최대 유휴 시간 등을 제어할 수도 있습니다. 연결 풀. 또한 자체 관리 메커니즘을 통해 데이터베이스 연결 수, 사용량 등을 모니터링할 수도 있습니다. 최대 연결 수를 초과하면 코루틴이 일시 중지되고, 작업을 계속하기 위해 연결이 닫힐 때까지 코루틴이 재개됩니다.

기능

-읽기-쓰기 분리 지원

-PHP로 인해 발생하는 데이터베이스 연결 병목 현상을 효과적으로 해결할 수 있는 데이터베이스 연결 풀 지원

-SQL92 표준 지원

-코루틴 스케줄링 채택

-여러 데이터베이스 지원 연결, 다중 데이터베이스, 다중 사용자, 유연한 조합

-MySQL 기본 프로토콜 준수, 다중 언어, 다중 플랫폼 범용 미들웨어 에이전트

-MySQL 트랜잭션 지원

-HandshakeV10 프로토콜 버전 지원

-MySQL4와 완벽하게 호환됩니다. 1 - 8.0

- 모든 주요 프레임워크와 호환되며 성능이 원활하게 향상됩니다

원래 설계 의도

PHP에는 연결 풀이 없으므로 동시성이 높으면 데이터베이스에 연결이 가득 차고 데이터베이스 미들웨어 Mycat과 같은 SQL은 일부 SQL을 사용할 수 없습니다. 예를 들어 일괄 추가 등을 지원하지 않으며 너무 부풀어 오릅니다. 그래서 저는 연결 풀링과 읽기-쓰기 분리만 지원하는 이 경량 미들웨어를 직접 작성했습니다. 이 미들웨어는 Swoole 코루틴 스케줄링과 HandshakeV10 프로토콜 전달을 사용하여 프로그램을 더욱 안정적으로 만들기 때문에 Mycat과 같은 모든 SQL 패키지 본문을 구문 분석할 필요가 없으므로 복잡성이 증가합니다. .

추천 튜토리얼: "mysql 튜토리얼"http://www.php.cn/course/list/51.html

위 내용은 MySQL 데이터베이스 연결 풀 SPMroxy의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 oschina.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제