Hi, thank you for the routing rules, now it works from the http client.
Tom On Wed, May 15, 2013 at 7:16 AM, Roberto De Ioris <[email protected]> wrote: > > > Hi, > > > > I'm trying to create JSON RPC server based on uWSGI 1.9.1. It listens on > > http-socket and everything seems to be working fine until the client > > request come. Then 500 Internal Server Error will raise. I don't know > > what's wrong. I went through the basics about uWSGI including > > http://uwsgi-docs.readthedocs.org/en/latest/RPC.html. But maybe I > > overlooked something. > > > > My ini config is simple: > > [uwsgi] > > > > > > master = true > > http-socket = :9658 > > workers = 3 > > plugin_dir = /usr/lib/uwsgi/plugins > > > > > > RPC interface is also simple: > > import uwsgi > > > > > > import json > > > > def hello(): > > print 'got a call' > > return json.dumps({'test_param': "test"}) > > #enddef > > > > uwsgi.register_rpc("hello", hello) > > > > > > And server will start with: > > uwsgi --ini ./config.ini --import rpcinterface.py --enable-threads > --stats > > :1717 > > > > detected binary path: /usr/local/src/uwsgi/uwsgi-1.9.1/uwsgi > > your processes number limit is 3883 > > your memory page size is 4096 bytes > > detected max file descriptor number: 1024 > > lock engine: pthread robust mutexes > > uwsgi socket 0 bound to TCP address :9658 fd 3 > > Python version: 2.7.3 (default, Jan 2 2013, 14:09:21) [GCC 4.7.2] > > Python main interpreter initialized at 0x25288d0 > > python threads support enabled > > your server socket listen backlog is limited to 100 connections > > your mercy for graceful operations on workers is 60 seconds > > mapped 290528 bytes (283 KB) for 3 cores > > *** Operational MODE: preforking *** > > registered shared/inherited RPC function "hello" > > *** no app loaded. going in full dynamic mode *** > > spawned uWSGI master process (pid: 14563) > > spawned uWSGI worker 1 (pid: 14565, cores: 1) > > spawned uWSGI worker 2 (pid: 14566, cores: 1) > > spawned uWSGI worker 3 (pid: 14567, cores: 1) > > *** Stats server enabled on :1717 fd: 15 *** > > > > When I do a request like this: curl 127.0.0.1:9658/hello > > > > Error server message will be: --- no python application found, check your > > startup logs for errors --- > > > > Thank you for any help :) > > > > Tom > > _______________________________________________ > > uWSGI mailing list > > [email protected] > > http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi > > > > RPC subsystem works at lower level than HTTP so you cannot directly call > it from an http client. > > You have to map rpc calls to http uri using the interna routing system: > > [uwsgi] > http-socket = :9090 > import = rpcinterface.py > > route = ^/hello rpc:hello > route = ^/hello/(.+)/(.+) rpc:hello $1 $2 > route = foobar/$ rpc:test ${REQUEST_URI} > > and so on... > > > > > -- > Roberto De Ioris > http://unbit.it > _______________________________________________ > uWSGI mailing list > [email protected] > http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi >
_______________________________________________ uWSGI mailing list [email protected] http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi
