承接 optimizely/optimizely-sdk 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

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

optimizely/optimizely-sdk

Composer 安装命令:

composer require optimizely/optimizely-sdk

包简介

Optimizely PHP SDK for Optimizely Feature Experimentation, Optimizely Full Stack (legacy), and Optimizely Rollouts

README 文档

README

Packagist Build Status Coverage Status Total Downloads Apache 2.0

This repository houses the PHP SDK for use with Optimizely Feature Experimentation and Optimizely Full Stack (legacy).

Optimizely Feature Experimentation is an A/B testing and feature management tool for product development teams that enables you to experiment at every step. Using Optimizely Feature Experimentation allows for every feature on your roadmap to be an opportunity to discover hidden insights. Learn more at Optimizely.com, or see the developer documentation.

Optimizely Rollouts is free feature flags for development teams. You can easily roll out and roll back features in any application without code deploys, mitigating risk for every feature on your roadmap.

Get Started

Refer to the PHP SDK's developer documentation for detailed instructions on getting started with using the SDK.

Requirements

To access the Feature Management configuration in the Optimizely dashboard, please contact your Optimizely account executive.

SDK version 4.0.0 requires PHP8+. SDK version 3 requires PHP5.5+ up to PHP7.

Install the SDK

The Optimizely PHP SDK can be installed through Composer. Please use the following command:

php composer.phar require optimizely/optimizely-sdk

Use the PHP SDK

Initialization

Create the Optimizely client, for example:

<?php

use Optimizely\Optimizely;

$optimizely = new Optimizely(<<DATAFILE>>);

Or you may also use OptimizelyFactory method to create an optimizely client using your SDK key, an optional fallback datafile and an optional datafile access token. Using this method internally creates an HTTPProjectConfigManager. See HTTPProjectConfigManager for further detail.

<?php

use Optimizely\OptimizelyFactory;

$optimizelyClient = OptimizelyFactory::createDefaultInstance(
    "your-sdk-key",
    <<DATAFILE>>,
    <<DATAFILE_AUTH_TOKEN>>
);

To access your HTTPProjectConfigManager:

<?php

use Optimizely\Optimizely;

/** @var Optimizely $optimizelyClient */
$configManager = $optimizelyClient->configManager;

Or you can also provide an implementation of the ProjectConfigManagerInterface in the constructor:

<?php

use Optimizely\Optimizely;
use Optimizely\ProjectConfigManager\HTTPProjectConfigManager;

$configManager = new HTTPProjectConfigManager(<<SDK_KEY>>);
$optimizely = new Optimizely(
    <<DATAFILE>>,
    null,
    null,
    null,
    false,
    null,
    $configManager
);

ProjectConfigManagerInterface

ProjectConfigManagerInterface exposes getConfig method for retrieving ProjectConfig instance.

HTTPProjectConfigManager

HTTPProjectConfigManager is an implementation of ProjectConfigManagerInterface interface.

The fetch method makes a blocking HTTP GET request to the configured URL to download the project datafile and initialize an instance of the ProjectConfig.

Calling fetch will update the internal ProjectConfig instance that will be returned by getConfig.

Use HTTPProjectConfigManager

<?php

use Optimizely\ProjectConfigManager\HTTPProjectConfigManager;

$configManager = new HTTPProjectConfigManager(<<SDK_KEY>>);

SDK key

Optimizely project SDK key; required unless source URL is overridden.

A notification will be triggered whenever a new datafile is fetched and ProjectConfig is updated. To subscribe to these notifications, use the $notificationCenter->addNotificationListener(NotificationType::OPTIMIZELY_CONFIG_UPDATE, $updateCallback).

SDK Development

Unit Tests

You can run all unit tests with:

./vendor/bin/phpunit

Contributing

Please see CONTRIBUTING.

Other Optimizely SDKs

optimizely/optimizely-sdk 适用场景与选型建议

optimizely/optimizely-sdk 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.91M 次下载、GitHub Stars 达 18, 最近一次更新时间为 2016 年 11 月 23 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「sdk」 「optimizely」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 optimizely/optimizely-sdk 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 optimizely/optimizely-sdk 我们能提供哪些服务?
定制开发 / 二次开发

基于 optimizely/optimizely-sdk 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

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

GitHub 信息

  • Stars: 18
  • Watchers: 100
  • Forks: 31
  • 开发语言: PHP

其他信息

  • 授权协议: Apache-2.0
  • 更新时间: 2016-11-23