
Lua Web开发指南
文章平均质量分 92
如何使用Lua开发Web应用.
水果糖的小铺子
一个被编程、运维、网管耽误的艺术家.
展开
-
Lua Web 开发(拓展篇) - 利用Nginx的rewrite完成伪静态
前言本文将给大家介绍对Lua的动态链接地址转换为伪静态页面的做法.本文仅针对不支持rest软件架构风格的web开发框架提出伪静态的解决方案.并且此方法已经在业界已使用多年, 且并不意味着技术过时或新技术的必要性. 它只是服务于一些特殊业务场景并能提供不同的解决方案.一、 测试环境名字内容环境MAC OSX 10.15.3nginxnginx/1.18.0编译器Apple clang version 11.0.0 (clang-1100.0.33.8)二、原创 2020-05-11 10:15:09 · 478 阅读 · 0 评论 -
Lua Web快速开发指南(10) - 利用MQ实现异步任务、订阅/发布、消息队列
本章节我们将学习如何使用MQ库.MQ库简介MQ库实现了各类消息代理中间件(Message Broker)的连接协议, 目前支持:redis、mqtt、stomp协议.MQ库基于上述协议实现了: 生产者 -> 消费者与订阅 -> 发布模型, 可以在不依赖其它服务的情况下独立完成任务.API介绍cf框架提供了多种MQ的封装, 当我们需要使用的时候需要根据实际的协议进行选择:--...原创 2019-06-25 20:50:33 · 732 阅读 · 0 评论 -
Lua Web快速开发指南(9) - 使用cf内置的异步库
API 介绍cf框架提供内置的异步库cf, 需要使用的时候我们必须先导入API: local cf = require "cf".定时器与循环定时器cf库内置了一些定时器方法, 这些方法为开发者提供了对时间事件的控制能力. cf.timeout、cf.at、cf.sleep.cf.sleep方法是一个阻塞的定时器, 只有一个参数用来设置当前协程的休眠时间并且没有返回值. 此方法的行为(语义...原创 2019-06-23 23:04:39 · 396 阅读 · 0 评论 -
lua web快速开发指南(8) - 利用httpd提供Websocket服务
Websocket的技术背景WebSocket是一种在单个TCP连接上进行全双工通信的协议, WebSocket通信协议于2011年被IETF定为标准RFC 6455并由RFC7936补充规范.WebSocket使得客户端和服务器之间的数据交换变得更加简单, 使用WebSocket的API只需要完成一次握手就直接可以创建持久性的连接并进行双向数据传输.WebSocket支持的客户端不仅限于浏...原创 2019-06-18 22:33:23 · 1476 阅读 · 0 评论 -
lua web快速开发指南(6) - Cache、DB介绍
"数据库"与"缓存"的基本概念数据库与缓存是服务端开发人员的必学知识点.数据库"数据库"是一种信息记录、存取的虚拟标记地点的集合统称. 比如现实生活中, 我们经常会用到文件柜、书桌等等数据存取容器.在对容器进行数据存取的时候, 我们会为每一层打上一个标签表示一种分类项. 而这种在数据库中划分子分类形成了表的概念. 这就是我们通常所说的结构化数据库.由于通常数据表之间可能会存在依赖关系, ...原创 2019-06-16 01:04:51 · 624 阅读 · 0 评论 -
lua web快速开发指南(5) - 利用template库构建httpd模板引擎
介绍template模板引擎是为了使用户界面与业务数据(内容)分离而产生的, 其本身并不是一种深奥的技术.template模板引擎首先会将合法的模板编译为lua函数, 然后将模板文件和数据通过模板引擎生成一份HTML代码.cf的admin库整使使用了template来构建服务端渲染页面, 并利用单页面+iframe模式快速完成lua后台开发.1. template基础语法在真正使用之前,...原创 2019-06-14 15:30:16 · 287 阅读 · 0 评论 -
lua web快速开发指南(4) - 详细了解httpd库的API
httpd库是基于HTTP 1.1协议实现而来, 内置了高性能的http协议解析器与urldecode解析库.httpd库默认情况下就能工作的很好, 但是在一些需求较为极端的场景还是需要微调一下参数.httpd常用的内置方法介绍1. httpd:timeout(number)设置每个连接到最大空闲(idle)连接等待时间, 超过这个数值httpd将主动断开连接. (默认值为:30秒)2....原创 2019-06-14 15:29:24 · 397 阅读 · 0 评论 -
lua web快速开发指南(3) - 初识httpd库路由
本章假设您已经知道httpd server如何快速搭建, 并且知道cf的启动流程与运行流程, 知晓httpd如何创建与启动.回顾上一章节-- script/main.lualocal httpd = require "httpd"local app = httpd:new("app")app:static("static", 30)app:listen("0.0.0.0", 808...原创 2019-06-14 15:28:30 · 692 阅读 · 0 评论 -
lua web快速开发指南(2) - cf的运行机制简介与基于httpd库的开发环境搭建
从本章开始假设大家都熟悉lua语法.运行流程在上一章节学会了如何安装cf后, 本章节就会介绍cf到运行机制与httpd的server搭建!cf是一个非常典型的基于协程的事件驱动开发框架在封装成API后, 可以依赖事件循环执行一套稳定运行时环境.而lua本身提供了强大的table数据结构可以根据需要自行构建所谓的"config", 所以cf为了减少无用的依赖就没有提供额外的config文件进...原创 2019-06-14 15:27:41 · 552 阅读 · 0 评论 -
lua web快速开发指南(1) - 初识cf框架
作者: 水果糖的小铺子(CandyMi)cf是什么?cf全称为: CoreFramework. 一个基于Reactor事件驱动与协程的lua高性能网络框架, 目前主要面向HTTP Application开发.cf内部主要实现了包括HTTP与HTTP Over Websoket协议的Server, 利用轻量级协程可以很轻松保持成千上万的长连接.cf内置了丰富的开发库与常见的第三方协议, ...原创 2019-06-14 15:26:43 · 2292 阅读 · 0 评论