Проверьте исходный код на Executors.newFixedThreadPool ():
return new ThreadPoolExecutor(nThreads, nThreads,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>());
ThreadPoolExecutor имеет getActiveCount () метод. Таким образом, Вы могли бы или бросить ExecutorService в ThreadPoolExecutor, одерское использование вышеупомянутый код непосредственно для получения того. Можно тогда вызвать getActiveCount ().
попробуйте rpxnow.com, они предоставляют несколько вариантов, включая openid.
Я только что немного поигрался с openid-consumer, о котором вы упомянули, и он действительно работает. Вы пробовали запустить образец кода автономно, как отдельный проект?
Я использовал его в тестовом приложении на App Engine, и, похоже, он работает нормально. Я поместил consumer.py, fetcher.py, store.py, а затем каталог openid в корневой каталог, затем переместил части конфигурации в app.yaml из примера приложения openid в свой app.yaml.
Вы можете проверить реализацию на http://x-libris.appspot.com . В правом верхнем углу нажмите Logga in (что по-шведски означает «логин»). Попробуйте использовать любого из доступных поставщиков OpenId, на данный момент OpenId, Google, MySpace и Yahoo! доступны (я тестировал только первых двух провайдеров).
Это решение на основе Ajax, поэтому я немного подправил метод рендеринга в consumer.py, чтобы изменить шаблон, и пример на openid-demo.appspot.com оказался мне удобен.
// Джон
Я только что заметил, что новая версия SDK движка приложений теперь включает поддержку OpenID в пользовательском API.
Версия 1.3.4 включает поддержку аутентификации через OpenID в качестве экспериментальной характерная черта.
см. в документации API пользователя python движка приложений для получения дополнительной информации об этом
Это должно упростить реализацию (я начну реализовывать это сегодня!)
Я установил пример приложения здесь:
http://github.com/shripadk/authlogic_openid_selector_example
С исходный код. Он работает точно так же, как stackoverflow. Не реализовали facebook auth, поскольку он все еще глючит.