Download the PHP package codeq/meilisearch-queueindexer without Composer

On this page you can find all versions of the php package codeq/meilisearch-queueindexer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package meilisearch-queueindexer

CodeQ.Meilisearch.QueueIndexer

Asynchronous live indexing for Medienreaktor.Meilisearch using Flowpack JobQueue.

The package decorates Neos' NodeIndexerInterface so publish operations enqueue live indexing jobs instead of writing to Meilisearch synchronously. A worker command drains the queue and delegates the actual indexing/removal work back to Medienreaktor.Meilisearch.

Installation

Require the package in the Neos distribution:

If the package is not available on Packagist yet, add the repository explicitly:

This package expects medienreaktor/meilisearch to be installed and configured by the site package. Projects that use a forked Medienreaktor package must add the corresponding VCS repository in the root composer.json.

Version 0.2 currently requires dev-bugfix/combined-fixes, which contains the identifier-based removal API used by deferred removal jobs. This constraint can be relaxed after that API is included in an upstream release.

Queue Configuration

The default configuration uses a Doctrine queue named CodeQ.Meilisearch.QueueIndexer.Live:

Set up the queue after installing:

Commands

Drain the live indexing queue:

Enqueue all fulltext-root documents from every allowed content-dimension combination in the live workspace:

Snapshot jobs retain their explicit target dimension until execution. This matches nodeindex:build, including fallback/shine-through variants whose Meilisearch document hash must represent the requested dimension rather than the underlying fallback node.

Inspect queue state:

Flush the live queue:

Settings

Live async indexing is enabled by default:

Set enableLiveAsyncIndexing: false to fall back to synchronous Medienreaktor indexing.

Scheduled Visibility Reconciliation

Medienreaktor.Meilisearch keeps scheduled visibility reconciliation disabled by default. When that upstream feature is enabled, its scheduledvisibility:reconcile command delegates index and removal operations to NodeIndexerInterface. This package's decorator therefore puts those operations onto the live queue automatically; no second reconciliation command or queue setting is required here.

The reconciliation command only submits jobs. Keep the worker running to apply them:

The normal snapshot build remains unchanged. Enabling live asynchronous indexing does not enable scheduled reconciliation by itself.

Removal jobs persist the exact Meilisearch document identifier when they are enqueued. They can therefore delete the document even if the corresponding Neos NodeData has already disappeared before a worker executes the job.

Jobs which were already queued by an older package version do not contain that identifier and continue through the legacy node-rehydration path. Drain the live queue before upgrading. If that cannot be guaranteed, perform a one-time index flush and complete rebuild after deploying the new worker so previously orphaned documents cannot remain searchable.

Index Name Configuration

The queue indexer resolves its own indexClient from Medienreaktor.Meilisearch.indexName. For a complete environment-specific setup, the consuming site should also configure the upstream Medienreaktor indexer/commands/query builder to use the same setting, for example:

Production Worker

Run nodeindexqueue:work continuously in production. For Beach-style deployments, wrap it in a restart loop so the worker comes back after PHP exits:


All versions of meilisearch-queueindexer with dependencies

PHP Build Version
Package Version
Requires neos/flow Version ^7.0 || ^8.0
neos/content-repository Version ^7.0 || ^8.0
flowpack/jobqueue-common Version ^3.0 || dev-master
medienreaktor/meilisearch Version dev-bugfix/combined-fixes
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package codeq/meilisearch-queueindexer contains the following files

Loading the files please wait ...