wxml->wcc编译->javascript
用户javascript->

wawebview->view

小程序原理

微信
小程序-》
webview
appservice
native

首次加载cdn
小程序包
冷加载读取缓存/检查更新

热加载直接后台切前台

ajax请求server
response

webview预加载

微信小程序以及后台交互架构

后端服务

服务api

web server -》 业务应用 -》 文件,数据库,缓存
后台服务

后台设备:
lb 负载均衡

web server 业务应用服务器-》分布式存储-》数据库集群-》缓存集群

serverless 架构
无服务器

[外链图片转存失败(img-rsyy2xNt-1566227740535)(https://upload-images.jianshu.io/upload_images/11158618-1d1bedb75a5890f6.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-MI8SUh0h-1566227740536)(https://upload-images.jianshu.io/upload_images/11158618-53e9e6373416eab4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

小程序-》api网关-》云函数-》cdb云数据库

小程序通过网络api,发起请求

// 主播
<live-pusher src=""></live-pusher>// 观众
<live-player src=""></live-player>

构建直播小程序
申请腾讯云直播服务
获取加密私钥
部署自己的业务后台
生成开播,播放端地址
开启小程序

setData优化
频繁setData = 频繁dom操作
ui延迟
事件延迟

超大数据setData
脚本执行时间过大

在后台setData
多余的资源消耗
抢占前台js执行

onhide时停止数据更新

[外链图片转存失败(img-x3rzY6Hs-1566227740537)(https://upload-images.jianshu.io/upload_images/11158618-57c51c11a219a139.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-u6X3fPKh-1566227740539)(https://upload-images.jianshu.io/upload_images/11158618-f69baab7db80cf9a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

微信小程序登录过程
获取code

应用态的access_token
/cgi-bin/token
中控cache模块维护
cache失效时间,比如expires_in*5/6
appsecret不要放到前端
session_key不要放前端

开放数据域
目的:保证用户隐私的前提下开放用户数据给第三方
定义:开放数据域 是一个封闭,独立的JavaScript作用域

[外链图片转存失败(img-nPak0nyE-1566227740540)(https://upload-images.jianshu.io/upload_images/11158618-f2496a6d834e798f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-JmvRdkIj-1566227740540)(https://upload-images.jianshu.io/upload_images/11158618-7d529991164329e9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-zyJclLpg-1566227740542)(https://upload-images.jianshu.io/upload_images/11158618-cca1a7669b77ed82.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-zBYTB3XS-1566227740545)(https://upload-images.jianshu.io/upload_images/11158618-5b6d738e0c587f2b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-rxLm3RpN-1566227740548)(https://upload-images.jianshu.io/upload_images/11158618-ddf821070798d0ce.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-dBhmsWdL-1566227740550)(https://upload-images.jianshu.io/upload_images/11158618-12dab4c34e5da4ad.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-z7LQyHV3-1566227740551)(https://upload-images.jianshu.io/upload_images/11158618-32cef1a6762f044e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

wxParse富文本的坑
https://github.com/icindy/wxParse

rich-text

wxapp-webpack-plugin

代码精简

zanproxy
npm install -g zan-proxy

[外链图片转存失败(img-2LFTUuyT-1566227740552)(https://upload-images.jianshu.io/upload_images/11158618-243f56436a8319ce.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-8LmD1WYG-1566227740554)(https://upload-images.jianshu.io/upload_images/11158618-f3b5e1e857627323.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

[外链图片转存失败(img-9xAIaHF1-1566227740555)(https://upload-images.jianshu.io/upload_images/11158618-d5dd96b92a7e3174.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]


若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理。


请点赞!因为你们的赞同/鼓励是我写作的最大动力!

欢迎关注达叔小生的简书!

这是一个有质量,有态度的博客

[外链图片转存失败(img-rUxE5pcr-1566227740556)(https://upload-images.jianshu.io/upload_images/11158618-9ab0d3fef85d80ce?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

微信小程序敏捷开发实战相关推荐

  1. 腾讯云+社区沙龙·小程序敏捷开发实战(北京)开启报名

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 作者:由云加社区技术沙龙发表在云+社区 2018伊始,最火爆的不是春晚和红包,而是从天而降的"跳一跳".这款来自微信的轻 ...

  2. 微信小程序云开发实战:网上商城(二)

    微信小程序云开发实战:网上商城(二) 主页面 入口页面 云函数与云数据库 代码实现 云端实现 小程序端实现 选择UI组件库 WeUI Vant 整合UI组件库 以扩展包的方式引入weui 接下来 主页 ...

  3. 【系】微信小程序云开发实战坚果商城-云开发开篇

    第 3-2 课:云开发开篇 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微信 ...

  4. 【系】微信小程序云开发实战坚果商城-开篇

    开篇:无服务开发是未来? 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微信小 ...

  5. 【系】微信小程序云开发实战坚果商城-商城项目搭建

    第 2-1 课:商城项目搭建 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微 ...

  6. 【系】微信小程序云开发实战坚果商城-扩展篇

    第 5-1 课:扩展篇 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微信小程 ...

  7. 微信小程序云开发实战:网上商城(一)

    微信小程序云开发实战:网上商城(一) 关于本系列 工具与平台 微信开发者工具 小程序账号 云开发 辅助开发工具 开发平台 创建项目 云函数 接下来 关于本系列 偶然的机会需要给人做一个团购类的微信小程 ...

  8. 【系】微信小程序云开发实战坚果商城-弹性盒子

    第 1-1 课:微信小程序实操弹性盒子 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 ...

  9. 【系】微信小程序云开发实战坚果商城-前端之订单实现

    第 2-7 课:前端之订单实现 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系] ...

最新文章

  1. s5pv210 uboot-2012-10移植(三) 之支持SPL
  2. 一种改进的快速人脸检测算法
  3. wxWidgets:支持国际化
  4. Effective Java读书笔记完结啦
  5. CSS3.0_选择器_学习笔记
  6. 快速幂算法相关题目(Leetcode题解-Python语言)
  7. getparent_Java文件类字符串getParent()方法(带示例)
  8. 中国式的emf(gef)建模,带来的问题
  9. webstore忽略指定的文件夹显示
  10. 跟着开涛springmvc学习(转)
  11. Java8 in action(1) 通过行为参数化传递代码--lambda代替策略模式
  12. 微软开源区块链平台项目 Bletchle
  13. 京东数据分析工具(京东销售数据如何查询)
  14. 查找算法 binary_serach
  15. 海义QQ群共享下载者的一些图例使用步骤教程
  16. 8、C语言printf函数与scanf函数
  17. java、mysql、tomcat、maven、云环境配置、VUE
  18. c语言switch不可以用枚举,76-枚举类型用在switch中
  19. PS2 键盘在win10下开机过程 收发的数据
  20. 真假博士后事件 万万没想到这些明星是学霸

热门文章

  1. OLAP和OLTP以及HTAP的区别
  2. LaTeX公式在括号内换行
  3. 支付宝支付免费实战公开课
  4. 计算机怎么硬盘分区,新电脑如何分区,详细教您如何给电脑硬盘分区
  5. 3dmax:3dmax三维之各种材质参数化设置(贴图简介、设计流程)图文教程之详细攻略(切记收藏!)
  6. 基于token的登录管理(多设备登录、单设备登录)
  7. 上课点名app_云夫子课堂点名app下载
  8. 关于使用3D音频插件过程中失声问题
  9. 快速修复装ubuntu9.10后,系统引导菜单中XP丢失的问题
  10. Golang练手小项目系列