0%

OpenResty是什么

  • OpenResty是什么,官网是这样介绍的:

    通过 Lua 扩展 NGINX 实现的可伸缩的 Web 平台

    的确,OpenResty可以简单的理解为Nginx + Lua,通过Lua库引入数据库访问能力,真正的让Nginx向搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关这一目标迈出了重要的一步

OpenResty的配置

  • OpenResty的配置可以分为2类
    • lua脚本
    • Nginx配置文件
  • 下面列举几个常见场景的Nginx配置
阅读全文 »

TS 学习笔记

TS是什么

  • 官方文档,多用多看
  • js的超集,构建于js之上的一种语言
  • 在js的基础上引入类型系统等不错的特性,其中包括js的新特性(ES6或之后的)
    • 在开发过程中 vscode就会提示错误,而不是在运行时从控制台发现错误
    • ts的编译器会自动将js新特性编译成即使在旧版本的浏览器中也支持运行的js代码,取代了babel的功能
    • js是动态类型语言,其变量的数据类型是在运行时确定的,而ts是静态类型语言,其类型在开发时就已经确定了,不会在运行时变动
  • ts不仅仅是一种语言,也可以视作是一个工具,可以将ts编译为js,以运行在browser或者nodejs中
    • 因此最终运行的还是js,所以ts的所有能力不能超出js所能提供的范围,ts只是在js之上引入了一些优秀特性,由编译器将这些特性转化为相对复杂的js代码
    • 使用npm install typescript -g安装typescript支持,也会自动安装typescript的编译器
    • 执行tsc xx.ts即可完成将ts编译为js
      • 如果在开发中,IDE报错,但是并没有处理,而是直接编译,最终可以得到编译好的js,但是编译过程会报错
    • ts编译器提供了丰富的可配置选项
  • ts不仅引入类型系统,还引入了接口,泛型以及元编程的概念(修饰器)
  • VSCode等现代IDE有了ts加持后,甚至可以在非ts的代码编辑中进行类型相关的智能的提示
  • ts的类型系统只在编译时支持,在运行时是不会支持的,因为并没有支持ts运行的执行引擎,只有支持js运行的执行引擎
  • ts是开发、编译时的类型检查,而js是运行时的类型检查
阅读全文 »