Architecting Your Implementation [identifystream]

Before implementing any Audible Magic service (test or production), careful consideration should be given to architecting your implementation. Below are some key considerations for deploying programs in the Audible Magic toolkit and architecting your service to be as efficient and performant as possible: 

Audible Magic’s identifystream program

  • Following best practices for architecture, your use of the AMToolkit (identify) should never run inline with your content deployment processes. Running identify outside the critical path will help ensure any issues do not delay or block the rest of your content deployment processes. 
  • Audible Magic will provide you with a maximum number of instances of the identify program that should be running at any one time. Exceeding this limit can cause errors (5429 – Too many requests) [529, not 5429] 
  • The use of queues is recommended as an efficient mechanism to send tasks to the process that runs identify.  
  • The media files to be processed should already be available for immediate access by identify when the task is read from the queue. Waiting for a file copy or giving a slow network path to identify will slow your processing.  
  • To process the most media files, the process that runs identify should only check if there were any errors when calling the identify program, and not parse the match results or take additional actions. Parsing the match results and taking additional actions should be handled by a separate process via a queue.  

 

Need help architecting your deployment? Ask us about our detailed guide on Architecture Considerations for AMToolkit Implementation. Reach out to helpdesk@audiblemagic.com