Difference between revisions of "MusicBrainz Server"

From MusicBrainz Wiki
Jump to navigationJump to search
Line 27: Line 27:
* [[Server Setup|Setup your own server]]
* [[Server Setup|Setup your own server]]
* [[Server Development|Server development]]
* [[Database Development|Database development]]
* [[XML Web Service|XML web service]]
* [[XML Web Service|XML web service]]
* [[Server Internationalisation|Server Internationalisation]]
* [[Server Internationalisation|Server Internationalisation]]

Revision as of 19:13, 29 October 2011

Products > MusicBrainz Server

The MusicBrainz Server is an open source GPL licensed software application that is written in Perl. The MusicBrainz Server provides the primary interface to the MusicBrainz Database by providing a website for users to browse and edit the data on, and a web service to power client applications like MusicBrainz Picard. The server can be accessed at http://musicbrainz.org/ or alternatively you may setup and run your own server.

If you are looking for help in understanding how MusicBrainz works the beginners guide and FAQs will provide a more thorough overview.


The following diagram briefly illustrates the different components of the MusicBrainz service:
How the MusicBrainz components are related to each other

As the diagram illustrates, the MusicBrainz server listens for incoming web page / WebService requests over HTTP, processes the requests referring to the database where necessary, and returns an appropriate response to the calling client. (See the DevelopmentOverview page for more details). The Relatable TRM Signature Server is not part of the MusicBrainz server. It is a closed-source proprietary system licensed from Relatable. For more information, please see HowTRMGenerationWorks. Since the Relatable TRM Signature Server is closed-source, you cannot download or modify its source code.


download.gif Download and setup the server.

Required Software

The MusicBrainz server is built on top of the following components:

  • The data is stored in a PostgreSQL relational database.
  • Virtually all of the server code is written in Perl 5.8.
  • The web server is built using Apache and mod_perl.
  • A selection of Perl modules from CPAN are used; in particular the web pages are constructed using Mason.
  • The Expat XML parser library is used to handle the RDF web services.

Learn More