setup_libevent.sh 1.0 KB

12345678910111213141516171819202122232425262728293031323334
  1. #!/bin/bash
  2. export NGINX_HOME=${IROOT}/nginx
  3. export LIBEVENTHOST_HOME=${TROOT}/src/LibeventHost
  4. export MONO_GC_PARAMS="nursery-size=16m"
  5. . ${IROOT}/mono.installed
  6. sed -i 's|localhost|'"${DBHOST}"'|g' src/Web.config
  7. rm -rf src/bin src/obj
  8. xbuild src/NancyBenchmark.csproj /t:Clean
  9. xbuild src/NancyBenchmark.csproj /p:Configuration=Release
  10. rm -rf ${LIBEVENTHOST_HOME}/bin ${LIBEVENTHOST_HOME}/obj
  11. xbuild ${LIBEVENTHOST_HOME}/LibeventHost.csproj /p:Configuration=Release
  12. # nginx
  13. port_start=9001
  14. port_end=$((${port_start}+${MAX_THREADS}))
  15. conf="upstream mono {\n"
  16. for port in $(seq ${port_start} ${port_end} ); do
  17. conf+="\tserver 127.0.0.1:${port};\n"
  18. done
  19. conf+="}"
  20. echo -e $conf > ${TROOT}/nginx.upstream.conf
  21. ${NGINX_HOME}/sbin/nginx -c ${TROOT}/nginx.conf.libevent -g "worker_processes '"${MAX_THREADS}"';"
  22. # Start fastcgi for each thread
  23. # To debug, use --printlog --verbose --loglevels=All
  24. for port in $(seq ${port_start} ${port_end} ); do
  25. mono-sgen -O=all ${LIBEVENTHOST_HOME}/bin/Release/LibeventHost.exe 127.0.0.1 ${port} ${DBHOST} &
  26. done