1. 希望用nginx+lua实现类似网站统计的功能(页面PV,页面点赞这类的统计功能),原来的接口全是NGINX+PHP+MEMCACHE实现,现在希望能够使接口更快响应请求,采用了NGINX+LUA+REDIS做接口响应,后台功能仍然是采用PHP,以及用PHP去分析整理LUA接口采集到的数据。
2. 前期接口实现的功能会很简单,只有实现PV和页面点赞的功能,后期可能加在接口收集到更多的信息,但是为了运维方便,不希望每次项目有代码更新,都要运维去每台部署代码的服务器重启一遍(服务器有其他的应用)。
基于这种情况,请问有没有办法让LUA代码类似PHP这样部署,每次只要代码更新,不用失望nginx就可以实现接口的更新。
当然,上面的不重启考虑到生产环境的性能问题,是打缓存打开的,即:lua_code_cache on
我目前项目是打算只有一个入口:
location ~ ^/api {
content_by_lua_file /home/httpd/html/hits/trunk/api.lua;
}
类似上面这样的配置,然后通过URL中的参数,执行不同的代码功能。
这里,我希望通过参数来判断要执行的功能,并获取指定lua代码目录下是否有相应的文件,如果有存在就执行,不存在就执行。
但是这样也存在一个io的操作。而且代码缓存后,上次判断不存在的文件,下次执行时是否会一直认为不存在?
另外在lua中这样执行一个指定文件中的代码有哪些好的方法吗?(类似于PHP中include 功能)
以上就是我的情况和个人的想法,因为刚接触lua不久,所以真心来请教各位有经验的,请指教一下。