[ejabberd] extauth crashes. performance?

Stephan Maihöfer sma at turtle-entertainment.de
Tue May 5 14:16:41 MSD 2009


hi,
 
we would love to authenticate against a webservice using json or xml or
something like that. would that mean we would have to write mod_auth_json?
 
would that scale better than external authentication just because it is inside
ejabberd? is there something like that around already?
 
greetings,
stephan


________________________________

	Von: ejabberd-bounces at jabber.ru [mailto:ejabberd-bounces at jabber.ru] Im Auftrag von Mickaël Rémond
	Gesendet: Sonntag, 3. Mai 2009 21:37
	An: ejabberd at jabber.ru
	Betreff: Re: [ejabberd] extauth crashes. performance?
	
	
	Hello,
	 
	Avoid external authentication. This is intended only for small servers.
	 
	On Tue, 28 Apr 2009 16:52 +0200, "Stephan Maihöfer" <sma at turtle-entertainment.de> wrote:
	 

		hello,
		 
		we are loadtesting ejabberd with an external python script,
		ulimit -n is set to 128000 and erlang config looks like this:
		 
		# define default configuration
		POLL=false
		SMP=auto
		ERL_MAX_PORTS=128000
		ERL_PROCESSES=1000000
		PROCESSES=1000000
		ERL_MAX_ETS_TABLES=6000
		 
		making users connect from the website and "attaching" theis
		sessions (using bosh) generally means a bit more logins as
		usual, but ejabberd crashes on us with approximately 4000 users
		with the attached error.
		 
		the python-script itself is as basic as it gets, it basically returns
		"true" all the time.
		 
		is this a problem of my script? of ejabberd? of python? of the OS?
		of memory?
		 
		help or hints are greatly appreciated!
		 
		thanks in advance,
		stephan
		 
		PS:
		=ERROR REPORT==== 2009-04-28 16:35:30 ===
		** State machine <0.23581.72> terminating
		** Last event in was {xmlstreamelement,
		                         {xmlelement,"auth",
		                             [{"xmlns","urn:ietf:params:xml:ns:xmpp-sasl"},
		                              {"mechanism","PLAIN"}],
		                             [{xmlcdata,
		                                  <<"MTA1ODQ1NEBqYXZhMS5nbncuZGUAMTA1ODQ1NABmb28=">>}]}}
		** When State == wait_for_feature_request
		**      Data  == {state,
		                     {socket_state,ejabberd_http_bind,
		                         {http_bind,<0.23579.72>,{{191,43,230,84},38973}},
		                         <0.23580.72>},
		                     ejabberd_socket,#Ref<0.0.45.203711>,"229602760",
		                     {sasl_state,"jabber","host.com",[],
		                         #Fun<ejabberd_c2s.1.107979706>,
		                         #Fun<ejabberd_c2s.2.69542819>,undefined,undefined},
		                     c2s,c2s_shaper,false,false,false,false,[],false,
		                     undefined,[],"host.com",[],undefined,
		                     {0,nil},
		                     {0,nil},
		                     {0,nil},
		                     {0,nil},
		                     {dict,0,16,16,8,80,48,
		                         {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},
		                         {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},
		                     undefined,undefined,undefined,false,
		                     {userlist,none,[]},
		                     unknown,unknown,
		                     {{191,43,230,84},38973},
		                     []}
		** Reason for termination =
		** {badarg,[{extauth,call_port,2},
		            {ejabberd_auth_external,check_password,3},
		            {ejabberd_auth,'-check_password_with_authmodule/3-fun-0-',4},
		            {lists,dropwhile,2},
		            {ejabberd_auth,check_password_with_authmodule,3},
		            {cyrsasl_plain,mech_step,2},
		            {cyrsasl,server_step,2},
		            {ejabberd_c2s,wait_for_feature_request,2}]}
		 

	-- 
	  Mickaël Rémond
	  mickael.remond at process-one.net

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.jabber.ru/pipermail/ejabberd/attachments/20090505/f4f81cbb/attachment.htm>


More information about the ejabberd mailing list