sphinx documentation and sample config file
darcs-hash:20081124023036-099f7-d2c32538e8a81170032ba0bc9fc5caf79e2b59a9.gz
This commit is contained in:
parent
64d2709bcd
commit
525b867718
33
README
33
README
@ -141,7 +141,11 @@ For some functionality, you will also need the following extensions:
|
||||
server to store the data in.
|
||||
- Mailparse. Efficient parsing of email requires this extension.
|
||||
Submission by email or SMS-over-email uses this extension.
|
||||
|
||||
- Sphinx Search. A client for the sphinx server, an alternative
|
||||
to MySQL or Postgresql fulltext search. You will also need a
|
||||
Sphinx server to serve the search queries.
|
||||
|
||||
|
||||
You will almost definitely get 2-3 times better performance from your
|
||||
site if you install a PHP bytecode cache/accelerator. Some well-known
|
||||
examples are: eaccelerator, Turck mmcache, xcache, apc. Zend Optimizer
|
||||
@ -590,6 +594,22 @@ backups of a working Laconica system by backing up the database and
|
||||
the Web directory. To backup the database use mysqldump (http://ur1.ca/7xo)
|
||||
and to backup the Web directory, try tar.
|
||||
|
||||
Sphinx
|
||||
------
|
||||
|
||||
To use a Sphinx server to search users and notices, you also need
|
||||
to install, compile and enable the sphinx pecl extension for php on the
|
||||
client side, which itself depends on the sphinx development files.
|
||||
"pecl install sphinx" should take care of that. Add "extension=sphinx.so"
|
||||
to your php.ini and reload apache to enable it.
|
||||
|
||||
You can update your MySQL or Postgresql databases to drop their fulltext
|
||||
search indexes, since they're now provided by sphinx.
|
||||
|
||||
On the sphinx server side, a script reads the main database and build
|
||||
the keyword index. A cron job reads the database and keeps the sphinx
|
||||
indexes up to date.
|
||||
|
||||
Upgrading
|
||||
=========
|
||||
|
||||
@ -931,6 +951,17 @@ enabled: Set to true to enable. Default false.
|
||||
server: a string with the hostname of the memcached server. Can also
|
||||
be an array of hostnames, if you've got more than one server.
|
||||
|
||||
sphinx
|
||||
------
|
||||
|
||||
You can get a significant boost in performance using Sphinx Search
|
||||
instead of your database server to search for users and notices.
|
||||
(http://sphinxsearch.com/).
|
||||
|
||||
enabled: Set to true to enable. Default false.
|
||||
server: a string with the hostname of the sphinx server.
|
||||
port: an integer with the port number of the sphinx server.
|
||||
|
||||
integration
|
||||
-----------
|
||||
|
||||
|
@ -59,7 +59,7 @@ $config['db']['database'] = 'mysql://laconica:microblog@localhost/laconica';
|
||||
# sphinx search
|
||||
$config['sphinx']['enabled'] = false;
|
||||
$config['sphinx']['server'] = 'localhost';
|
||||
$config['sphinx']['PORT'] = 3312;
|
||||
$config['sphinx']['port'] = 3312;
|
||||
|
||||
|
||||
# Users to populate the 'Featured' tab
|
||||
|
71
sphinx.conf.sample
Normal file
71
sphinx.conf.sample
Normal file
@ -0,0 +1,71 @@
|
||||
#
|
||||
# Minimal Sphinx configuration sample for laconica
|
||||
#
|
||||
|
||||
source src1
|
||||
{
|
||||
type = mysql
|
||||
sql_host = localhost
|
||||
sql_user = USERNAME
|
||||
sql_pass = PASSWORD
|
||||
sql_db = identi_ca
|
||||
sql_port = 3306
|
||||
sql_query = SELECT id, UNIX_TIMESTAMP(created) as created_ts, nickname, fullname, location, bio, homepage FROM profile
|
||||
sql_query_info = SELECT * FROM profile where id = $id
|
||||
sql_attr_timestamp = created_ts
|
||||
}
|
||||
|
||||
|
||||
source src2
|
||||
{
|
||||
type = mysql
|
||||
sql_host = localhost
|
||||
sql_user = USERNAME
|
||||
sql_pass = PASSWORD
|
||||
sql_db = identi_ca
|
||||
sql_port = 3306
|
||||
sql_query = SELECT id, UNIX_TIMESTAMP(created) as created_ts, content FROM notice
|
||||
sql_query_info = SELECT * FROM notice where id = $id
|
||||
sql_attr_timestamp = created_ts
|
||||
}
|
||||
|
||||
index identica_notices
|
||||
{
|
||||
source = src2
|
||||
path = DIRECTORY/data/identica_notices
|
||||
docinfo = extern
|
||||
charset_type = utf-8
|
||||
min_word_len = 3
|
||||
stopwords = DIRECTORY/data/stopwords-en.txt
|
||||
}
|
||||
|
||||
|
||||
index identica_people
|
||||
{
|
||||
source = src1
|
||||
path = DIRECTORY/data/identica_people
|
||||
docinfo = extern
|
||||
charset_type = utf-8
|
||||
min_word_len = 3
|
||||
stopwords = DIRECTORY/data/stopwords-en.txt
|
||||
}
|
||||
|
||||
indexer
|
||||
{
|
||||
mem_limit = 32M
|
||||
}
|
||||
|
||||
searchd
|
||||
{
|
||||
port = 3312
|
||||
log = DIRECTORY/log/searchd.log
|
||||
query_log = DIRECTORY/log/query.log
|
||||
read_timeout = 5
|
||||
max_children = 30
|
||||
pid_file = DIRECTORY/log/searchd.pid
|
||||
max_matches = 1000
|
||||
seamless_rotate = 1
|
||||
preopen_indexes = 0
|
||||
unlink_old = 1
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user