载入和安装
安装目录服务,以使用目录服务GraphQL API从Commerce实例请求和接收产品数据。 目录服务是作为repo.magento.com存储库中的编辑器中继包提供的。
系统要求
软件要求
- Adobe Commerce 2.4.4+
- PHP 8.1、8.2和8.3
- Composer: 2.x
支持的平台
- 云基础架构上的Adobe Commerce:2.4.4+
- Adobe Commerce内部部署:2.4.4+
端点
Catalog Service有两个端点可供载入:
- 沙盒(
https://catalog-service-sandbox.adobe.io/graphql
) — 用于上线前的测试和验证 - 生产(
https://catalog-service.adobe.io/graphql
) — 用于Commerce商家和网站的实时流量
所有Commerce测试实例都使用沙盒端点。
对沙盒端点执行所有加载测试。 在开始加载测试之前,请提交支持票证,以便服务团队可以预见额外的服务器流量。
安装和配置
要开始使用Adobe Commerce的Catalog Service,需要执行以下步骤:
- 安装目录服务扩展(
magento/catalog-service
) - 配置服务和数据导出
- 访问服务
安装目录服务扩展
预修课程
-
访问repo.magento.com以安装扩展。 有关密钥生成和获取必要的权限,请参阅获取您的身份验证密钥。 有关云安装,请参阅云基础架构上的Commerce指南
-
访问Adobe Commerce应用程序服务器的命令行。
在运行Adobe Commerce 2.4.4或更高版本的Adobe Commerce实例上安装最新版本的目录服务扩展(magento/catalog-service
)。 目录服务是作为repo.magento.com存储库中的编辑器中继包提供的。
使用此方法为Commerce Cloud实例安装Catalog Service。
-
在本地工作站上,转到云基础架构项目上Adobe Commerce的项目目录。
note note NOTE 有关在本地管理Commerce项目环境的信息,请参阅《云基础架构用户指南》上的 Adobe Commerce中的使用CLI管理分支。 -
请查看环境分支,以使用Adobe Commerce Cloud CLI进行更新。
code language-shell magento-cloud environment:checkout <environment-id>
-
添加目录服务模块。
code language-bash composer require magento/catalog-service --no-update
-
更新包依赖关系。
code language-bash composer update "magento/catalog-service"
-
提交和推送
composer.json
和composer.lock
文件的代码更改。 -
添加、提交并将
composer.json
和composer.lock
文件的代码更改推送到云环境。code language-shell git add -A git commit -m "Add catalog service module" git push origin <branch-name>
将更新推送到云环境会启动Commerce云部署流程以应用更改。 从部署日志中检查部署状态。
使用此方法为内部部署实例安装Catalog Service。
-
使用Composer将Catalog Service模块添加到您的项目中:
code language-bash composer require magento/catalog-service --no-update
-
更新依赖项并安装扩展:
code language-bash composer update "magento/catalog-service"
-
升级Adobe Commerce:
code language-bash bin/magento setup:upgrade
-
清除缓存:
code language-bash bin/magento cache:clean
note tip TIP 在某些情况下,特别是在部署到生产环境时,您可能希望避免清除编译的代码,因为这样可能需要一些时间。 在进行任何更改之前,请确保备份系统。
配置服务和数据导出
安装Catalog Service后,请完成以下任务以将目录服务与Adobe Commerce实例集成。 此集成支持在Commerce实例、目录服务和其他支持服务之间进行数据同步和通信。 数据同步由SaaS Data Export扩展处理。
-
通过指定API密钥并选择SaaS数据空间来设置Commerce Services Connector。
Commerce服务连接器设置是使用Adobe Commerce服务(如目录服务、实时搜索和产品Recommendations)所需的一次性过程。 如果已为其他服务配置了连接器,请跳过此步骤。
-
从数据管理功能板执行初始数据同步。
初始同步可能需要几分钟到几小时时间,具体取决于目录大小。 您可以从“数据管理”仪表板监视同步状态。 初始同步后,目录会持续导出产品数据以使服务保持最新。
note note NOTE 您还可以使用Commerce CLI从命令行启动初始同步。 请参阅_SaaS数据导出指南_中的初始同步。
要确保正确运行目录导出,请执行以下操作:
- 确认cron作业正在运行。
- 验证索引器是从Admin运行,还是使用Commerce CLI命令
bin/magento indexer:info
运行。 - 验证
Catalog Attributes Feed, Product Feed, Product Overrides Feed
和Product Variant Feed
索引器是否设置为Update by Schedule
。
监测数据同步并排除其故障
通过Commerce Admin,您可以使用数据管理功能板监视同步过程。 使用Commerce CLI和日志管理该进程并对其进行故障排除。
访问服务
可通过HTTPS使用POST命令从 https://catalog-service.adobe.io/graphql
端点访问Catalog Service GraphQL API。
在GraphQL查询中,必须指定多个HTTP标头,包括您在“管理员”中添加到Adobe Commerce Services Connector配置的公共API密钥。 有关详细信息,请参阅Storefront Services GraphQL文档。
防火墙配置
要允许Catalog Service通过防火墙,请将commerce.adobe.io
添加到允许列表。
目录服务和API网格
适用于Adobe Developer App Builder🔗的API Mesh使开发人员能够使用AdobeIO将专用或第三方API和其他接口与Adobe产品集成。
有关安装和配置详细信息,请参阅Catalog Service 和API Mesh主题。
数据管理功能板
有关Catalog Service数据同步的详细信息,请参阅数据管理功能板。