kemel91/laravel-tarantool
最新稳定版本:2.0.19
Composer 安装命令:
composer require kemel91/laravel-tarantool
包简介
A Tarantool based Eloquent ORM and Query builder for Laravel
README 文档
README
This package adds functionalities to the Eloquent model and Query builder for Tarantool, using the original Laravel API. This library extends the original Laravel classes, so it uses exactly the same methods.
Installation
Laravel Version Compatibility
| Laravel | Package |
|---|---|
| 11.x | 2.x |
| 12.x | 2.x |
| 13.x | 2.x |
Via Composer
composer require kemel91/laravel-tarantool
Configuration
You can use Tarantool either as the main database, either as a side database. To do so, add a new tarantool connection to config/database.php:
'tarantool' => [ 'driver' => 'tarantool', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', 3301), 'database' => env('DB_DATABASE'), 'username' => env('DB_USERNAME'), 'password' => env('DB_PASSWORD'), 'type' => env('DB_CONNECTION_TYPE', 'tcp'), 'sql_seq_scan' => env('DB_TT_SQL_SEQ_SCAN', true), 'options' => [ 'connect_timeout' => 5, 'max_retries' => 3 ] ],
The package also accepts driver_options.connection_type for backward compatibility, but type is the preferred option.
On Tarantool 3.x, SQL sequential scans are disabled by default. To keep Laravel's migration repository and other framework queries working as expected, the package enables sql_seq_scan for each connection by default. You can disable this behavior with 'sql_seq_scan' => false if you want strict Tarantool scan checks.
Running tests with Docker Compose
The repository now includes a Docker-based test environment, so PHP and Tarantool do not need to be installed locally.
Start Tarantool:
docker compose up -d tarantool
Use a specific Tarantool image if needed:
TARANTOOL_IMAGE=tarantool/tarantool:2 docker compose up -d tarantool
Run the full Laravel compatibility matrix:
docker compose run --rm --user "$(id -u):$(id -g)" php sh bin/test-matrix
Run tests for a single Laravel major version:
docker compose run --rm --user "$(id -u):$(id -g)" php sh bin/test-laravel 12
Set tarantool as main database
'default' => env('DB_CONNECTION', 'tarantool'),
You can also configure connection with dsn string:
'tarantool' => [ 'driver' => 'tarantool', 'dsn' => env('DB_DSN'), 'database' => env('DB_DATABASE'), ],
统计信息
- 总下载量: 69
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 3
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: BSD-3-Clause
- 更新时间: 2026-03-22