flockdb — Кто-нибудь успешно собрал его из git и установил?

Я пытался собрать flockdb из исходников из git, но не смог. Я использую Mac OSX 10.6 и получаю много проблем при установке бережливости/ускорения. Кто-нибудь успешно собрал и установил. Цените любой указатель на информацию о том, как это сделать (кроме того, что находится на сайте flockdb git).

Кроме того, я не знаю о Scala, но есть ли готовый установочный файл flockdb для установки на Mac/Linux/Windows?

Заранее спасибо.


person gopalanj    schedule 29.03.2011    source источник


Ответы (2)


Я только что успешно установил flockdb на машину amazon/ec2 под Ubuntu 12.04.

Установите Java 1.6

  • sudo apt-get update
  • sudo apt-get install openjdk-6-jdk

Установите Thrift (http://code.google.com/p/thrudb/wiki/UbuntuInstallGuide)

  • установить инструменты сборки и экономичные зависимости:
  • sudo apt-get -y install subversion g++ make flex bison python-dev libboost-dev libevent-dev automake pkg-config libtool make
  • загрузите копию Thrift 0.5.0 с: http://archive.apache.org/dist/incubator/thrift/0.5.0-incubating/
  • wget http://archive.apache.org/dist/incubator/thrift/0.5.0-incubating/thrift-0.5.0.tar.gz
  • tar zxvf thrift-0.5.0.tar.gz; cd thrift-0.5.0
  • ./configure
  • make
  • sudo make install
  • Установить рубиновый клиент
  • cd lib/rb/
  • sudo ruby setup.rb config
  • sudo ruby setup.rb install

Установить СБТ

ref steps

Пакет sbt доступен в репозитории Typesafe Debian.

  • Установите deb, чтобы добавить репозиторий typesafe debian в список утвержденных источников.
  • wget http://apt.typesafe.com/repo-deb-build-0002.deb
  • sudo dpkg -i repo-deb-build-0002.deb
  • sudo apt-get update
  • sudo apt-get install sbt
  • скачать лаунчер сбт:
  • wget http://simple-build-tool.googlecode.com/files/sbt-launch-0.7.4.jar
  • mv sbt-launch-0.7.4.jar ~/bin/sbt-launch.jar
  • создайте файл ~/bin/sbt и сделайте его исполняемым:
  • java -Xmx512M -jarимя_каталога $0/sbt-launch.jar "$@"
  • chmod u+x ~/bin/sbt
  • изменить ~/.bashrc: export PATH=${PATH}:$HOME/bin
  • source ~/.bashrc

Получить FlockDB

ref steps
  • git clone https://github.com/twitter/flockdb.git
  • cd flockdb
  • sbt update. Вы увидите результаты, как показано ниже.
......
[info] == update ==
[success] Successful.
[info] 
[info] Total time: 213 s, completed Jan 7, 2013 11:02:48 PM
[info] 
[info] Total session time: 267 s, completed Jan 7, 2013 11:02:48 PM
[success] Build completed successfully.
  • сначала создайте package-dist без теста: NO_TESTS=1 sbt package-dist. Вы увидите результаты, как показано ниже.
......
[info] == package-dist ==
[info] Packaging ./dist/flockdb-3e351842.zip ...
[info] Packaging complete.
[info] == package-dist ==
[success] Successful.
[info] 
[info] Total time: 7 s, completed Jan 7, 2013 11:09:51 PM
[info] 
[info] Total session time: 8 s, completed Jan 7, 2013 11:09:51 PM
[success] Build completed successfully.

Установить mysql-сервер

  • sudo apt-get install mysql-server, затем установка переменных env:
  • export DB_USERNAME="root"
  • export DB_PASSWORD="password"

Соберите FlockDB package-dist

  • если все вышеперечисленное успешно, cd flockdb и продолжайте пробовать sbt package-dist. Вы увидите результаты, как показано ниже.
[info] Passed: : Total 265, Failed 0, Errors 0, Passed 265, Skipped 0
[info]  
[info] All tests PASSED.
[info] == test-finish ==
[info] 
[info] == test-cleanup ==
[info] == test-cleanup ==
[info] 
[info] == package-dist ==
[info] Packaging ./dist/flockdb-3e351842.zip ...
[info] Packaging complete.
[info] == package-dist ==
[success] Successful.
[info] 
[info] Total time: 137 s, completed Jan 7, 2013 11:47:54 PM
[info] 
[info] Total session time: 138 s, completed Jan 7, 2013 11:47:54 PM
[success] Build completed successfully.

Установите gizzmo и запустите flockdb

Просто следуйте инструкциям в twitter-flockdb: https://github.com/twitter/flockdb/blob/master/doc/demo.markdown

Установить питон-клиент

>>> import flockdb
>>> client = flockdb.Client("localhost", 7915, {
...     "follows": 1,
...     "blocks": 2,
...     })
>>> client.add(1, "follows", 2)
>>> client.remove(1, "follows", 2)
>>> client.get(1, "follows", None)
()
>>> client.add(1, "follows", 2)
>>> client.get(1, "follows", None)
(2,)
>>> client.get(None, "follows", 2)
(1,)
>>> client.get_all([(1, "follows", 2), (2, "follows", 3)])
[(2,), ()]
person greeness    schedule 08.01.2013

Я также столкнулся с некоторыми проблемами, но они были решены, когда я убедился, что использую точные версии для зависимостей FlockDB:

  • джава 1.6
  • сбт 0.7.4
  • бережливость 0.5.0
person Chris Fong    schedule 28.02.2012