hostingranking.cn·基于ghost的轻量技术架构整理
本篇纯粹只讲hostingranking.cn网站的技术架构,也就是怎么做到的,达到什么效果。至于它是什么,为什么要做暂且不说,另篇会分享。
技术组成
首先hostingranking.cn是基于ghost博客平台而构建的,ghost最强大的部分就是可以最大限度的让你DIY网站,能力特别强。如下是技术组成图:
技术讲解
运行环境 | 用途 | |
---|---|---|
Ghost | Nodejs | 博客平台,可供主题创作的环境,博客管理,SEO等一系列可插拔的功能 |
JQuery | Javascript | 前端js交互 |
handlebar | - | 网页模板 |
spring boot | java | 提供后端服务,连接第三方服务 |
typeform | 第三方问卷调查服务 | |
mailchimp | 第三方邮件服务 |
主要功能
- ghost主题制作,呈现网站基本内容
- 个性化主机推荐
- 博客
ghost主题制作
ghost主题制作非常简单,只要你会写js+html+css即可制作,另外最好要学会handlebar模板语言,会让你制作主题事半功倍,入门制作教程参考我另一篇文章:https://cmlanche.com/2018/08/...
个性化主机推荐
基本流程如下
- 采用typeform来制作表单
- 开启typeform的webhook,意思就是当客户提交表单的时候,会往这个webhook url发送一个post请求,来告诉你有用户提交了,以及提交的数据。
- spring boot是我们的后端服务,专门用来制作webhook接口的,不要把webhook想的很神圣,没什么难的,webhook接口其实就是一个普通接口,只是它被用来处理webhook发送来的数据罢了。
- spring boot收到typeform提交的问卷信息后,去调用mailchimp的api,创建邮件,发送给客户。
活动图如下
我最终通过spring Boot接收webhook传递过来的不同数据,生成不同的推荐结果。
你可以在hostingranking.cn的实现效果,看自己是否能收到邮件,收到的是什么。
typeform
强大的问卷调查产品,体验无与伦比,生成的文件简单简洁,完整的api支撑,对刚起步的新手产品免费支持,更重要的是,支持中文!在国内访问畅通无阻!下图是我hostingranking.cn产品涉及到的问卷设计:
mailchimp
世界上最常用的邮箱市场营销工具,好处如下:
- 完全的开放,完整的api支持,支持用zapper连接上百款常用产品
- 中国访问速度还可以,用api调用无碍
- 诚意满满的新手产品扶助计划,帮助新产品达到足够规模再收费!
按照上面说的个性化功能,当你提交问卷之后,我的mailchimp后台会看到发送状态,以及打开和点击的状态,如下图:
一点吐槽:看到typeform和mailchimp,我想国外的东西做的真是开放,各种api都支持,反观国内,则各种保护,就比如知乎、博客园、segmentfault等都是不开放api的,这点让我觉得国内还不够开放。
博客
博客功能是ghost内置的核心功能,目前我没有在hostingranking.cn中开放,因为博客页面和详情页面的功能还没做好,等做好了再贴图了。
先用我的个人博客网站代替了:https://cmlanche.com (托管在github pages上的)
附
hostingranking.cn网站托管在Vultr主机上,买的最低配的VPS,每个月5美金
如果你要买它的主机并且你的主要客户在大陆的话,你一定要买日本的主机,不要买美国和新加坡的,因为日本的平均ping值是最低的,大约一百多,新加坡的主机会绕过日本再到中国,慢一些,而美国的大概两三百。
hostingranking.cn·基于ghost的轻量技术架构整理相关推荐
- 分表需要解决的问题 基于MyBatis 的轻量分表落地方案
分表:垂直拆分.水平拆分 垂直拆分:根据业务将一个表拆分为多个表. 如:将经常和不常访问的字段拆分至不同的表中.由于与业务关系密切,目前的分库分表产品均使用水平拆分方式. 水平拆分:根据分片算法将一个 ...
- Lifeograph 0.7.3发布 基于gtkmm的轻量电子日记本
Lifeograph 0.7.3该版本标签进行分类.在一个单一的日记可记录多个主题.每个条目不同主题的支持.自动插入项目符号和检查框一起缩排的支持.创建和记录最后更改日期.喜爱和标签过滤条目.拖放的条 ...
- 基于resnet-18的轻量型车道检测研究
基于resnet-18的轻量型车道检测研究 1.论文介绍以及实验 2.参考内容 论文2: Ultra Fast Structure-aware Deep Lane Detection 官方代码地址:h ...
- 改进Mahmood 等提出的基于椭圆曲线的轻量型的的认证协议
改进Mahmood 等提出的基于椭圆曲线的轻量型的的认证协议 1.初始阶段 1.旧版 1.改进(无) 2. 注册阶段 1.旧版 2.改进 3. 用户间认证与建立临时会话密钥阶段 1.旧版 2.改进 4 ...
- GIAC 2020 全球互联网架构大会演讲实录:基于TarsGo的微服务技术架构实践
2020年8月14日-15日,GIAC 2020 全球互联网架构大会于上周五正式在深圳开幕. GIAC(GLOBAL INTERNET ARCHITECTURE CONFERENCE)是长期关注互联网 ...
- 基于腾讯轻量服务器安装Aria2+AriaNg+Nginx+File Brower 服务
0x01应用简介 Aria2:是一个多平台轻量级,支持 HTTP.FTP.BitTorrent 等多协议.多来源的命令行下载工具. AriaNg:客户端启动器可以轻轻松松的管理你的Aria2下载器. ...
- 基于阿里云轻量应用服务器快速部署博客
简介 教程介绍如何在轻量应用服务器上,以WordPress为镜像的网站搭建及管理. 背景知识 轻量应用服务器 轻量应用服务器是面向单机应用场景的新一代计算服务,提供应用一键部署.一站式域名解析.网站发 ...
- 基于scratch构建轻量快速镜像
设计背景: 由于项目所限定的运行平台生态所限,没有良好的容器镜像支持无父镜像可以依赖(不像X86.ARM平台),且项目对容器镜像的启动时间和镜像大小的要求,所以需要从零开始构建镜像. docker的镜 ...
- 轻量项目架构 ljm-simple-base平台(前后端分离)
ljm-simple-base 项目wiki地址: https://gitee.com/MingAndTao/ljm-simple-base/wikis/%E9%A1%B9%E7%9B%AE%E7%A ...
最新文章
- mysql数据库blob区别_MySQL中TEXT与BLOB字段类型的区别
- 就微软启动盗版系统黑屏的个人看法
- 使用命令将单个java文件打包为jar
- 如何写出让同事好维护的代码?
- P4336 [SHOI2016]黑暗前的幻想乡
- 设计模式C++实现 —— 外观模式、组合模式
- 31. 脱壳篇-什么是壳
- 以小见大:如何设计注册登录页?
- python tkinter的基础用法
- sql小计汇总 rollup用法实例分析(转)
- init cloudchannel failerr:10102 - message:参数无效
- java图片蒙版,在javafx中创建图像叠加蒙版
- Revit提示.Net Framework Runtime4.7未安装解决方法(安装失败错误代码5100)
- 硬盘有摩擦声音_有摩擦的建筑物
- python interpreter下载_Pyonic Python 3 interpreter
- 代码坏味道类型和解决方法简介
- 如何绘制电气绝缘图(GB9706.1-2007和GB9706.1-2020差异)
- OpenLayers3基础教程——OL3基本概念
- 算法系列之二十:计算中国农历(一)
- 做ctf题目的时候运行程序就会显示ImportError: cannot import name ‘flag‘ from ‘secret‘ 求大佬解答
热门文章
- linux命令pwd
- C#语言学习思维导图
- C语言:关键字volatile详解!
- oracle: 在sqlplus中,执行sql语句
- [微信开发] - 用户获取推广二维码
- Android 系统镜像: boot.img kernel.img ramdisk.img system.img userdata.img cache.img recovery.img
- 使用virtualbox nat方式中的端口映射使用ssh服务
- 动态树与静态树显示——(一)
- 对物联网操作系统特征和定位的思考
- 呼叫中心团队管理浅谈