定制 s3lp/piece-data 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

s3lp/piece-data

最新稳定版本:0.9.4

Composer 安装命令:

composer create-project s3lp/piece-data

包简介

Pseudo replication Eloquent models via HTTP

README 文档

README

Pseudo replication Laravel Eloquent models via HTTP

Master install

  1. composer require s3lp/piece-data:dev-master
  2. artisan vendor:publish --provider="S3lp\PieceData\ServiceProvider"
  3. configure slaves:
    ['slave_name' => 'http://slave/api/unique/import_route']
  4. configure export_models:
    ['model_name' => App\Models\Model]
  5. configure access_token
  6. artisan migrate --path=vendor/s3lp/piece-data/database/migrations
  7. implements Syncable interface
  8. sheduler include console command
    S3lp\PieceData\Console\SyncModelsExport

Slave install

  1. composer require s3lp/piece-data:dev-master
  2. artisan vendor:publish --provider="S3lp\PieceData\ServiceProvider"
  3. configure import_models
    ['model_name' => App\Models\Model]
  4. configure access allowed_ips and/or access_token
  5. setup models $fillable attribute
  6. include API routes map:
    Route::any('/unique/import_route', '\\S3lp\\PieceData\\Controllers\\SyncImportController@syncImport');

Manual master use

artisan sync:models --status – show queue status and main settings.

artisan sync:models – start sync.

artisan sync:models --reset – sync all exportable models.

Options:

--models=name1,name2 – exportable models names for sync.

--post-chunk=1000 – max models objects for one post-request.

--reset-chunk=3000 – all exportable models query chunk for refill queue.

Tricks

public function getSyncSlaves(): array
{
    if (true) {
        return ['slave_name' => 'remove']; // force remove
    } elseif (true) {
        return array_filter(array_keys(config('sync_models.slaves')), 'callback');
    } else {
        return array_keys(config('sync_models.slaves'));
    }
}

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-06-06