Мое приложение clojure noir локально работает на 100 % и подключается к RedisToGo без проблем.
Проблема в том, что когда я развертываю Heroku (git push heroku master), я получаю ошибку тайм-аута:
Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
Полный журнал находится здесь: https://gist.github.com/1842439
Когда я удаляю этот код подключения Redis, он отлично развертывается:
(:use [aleph.redis :only (redis-client)])
(def r (redis-client {:host redis-url :password redis-pass :port redis-port}))
Странно то, что когда я запускаю «heroku run lein run repl» и вставляю приведенный выше код алефа, он отлично подключается к redis, и я могу читать/записывать данные.
Так что это что-то о том, как heroku загружает приложение, которое разрывает соединение с RedisToGo и тайм-аут.
r
дважды? Ваша программа может быть исключением, но, похоже, большую часть времени вам нужен общий клиент для вашего приложения (хотя вам, вероятно, следует убедиться, что он не используется в потоках). 16.02.2012