springboot a service调用b service_CaaS: 内容是新的基础设施 Content-as-a-Service

8ff472c83f2db9a6013df458f1064be1.png

内容是每家企业的必争之地,根据 CMI 的数据报告,88% 的 B2B 企业每天至少产生一篇内容。内容正在成为新的基础设施,Content as a Service 可以被简单理解为一种 CMS(Content Management Systen,内容管理系统),但是和传统的 CMS (如 Wordpress、Drupal 等)完全不同。传统 CMS 聚焦于内容管理和创建网站(比如 Wordpress 提供的大量网站模版),而 CaaS 只聚焦于内容的生产,并以 API (应用程序编程接口)的形式向外提供服务,这些 API 可被二次编程,从而用于打印机、移动应用或者其他设备上。

090cbf3edf9fb78fb5309a5adecdedb8.png

在这篇文章中,你将了解到什么是 CaaS 以及为什么内容是一种新的基础设施。在你想要使用 CaaS 时,本文可作为对比 CMS 和 CaaS 优劣的参考文章。我们还会罗列一些 CaaS 的使用场景,帮助你更好的了解 CaaS。

内容是新的基础设施

互联网上的所有应用都是信息管理软件,这些软件在本质上是由一张张互相联系的表组成的(如果你不理解这句话,那么你可以将一个网站想象成三张 Excel 表,一张表存储网站用户,一张表存储网站内容,还有一张表存储网站分类)。当你使用一个传统 CMS 时,你可以创建一些分类,并在分类上面撰写文章,这样的操作在网站时代是比较友好的,因为每个用户都只有一个平台 —— 那就是浏览器,这种方式在浏览器上分发非常容易。

进入移动时代后就不一样了,一家公司至少拥有三个平台(Web、iOS、Android),针对这些平台,每家企业都需要定制自己的 CMS,他们可能是在 Wordpress 上做深度定制,也可能是自己开发。做的多了之后,大家会发现,每家公司都在做同样的事情 —— 写管理界面、建表、写 API,这些界面可能是与公司业务高度结合的,比如头条 APP 的后台与微信公众号的后台肯定是不一样的。但细细研究却会发现,其本质就是五个事情:增删改查和联表。

d1db7419d3086d51a2f4fec8147ee74d.png

于是有人做了一种名为「Headless CMS」的平台出来,这种平台可以在线设计表和表的字段(和 想象下 Excel 的建表,写字段,但是用起来要比 Excel 简单很多),然后系统会根据设计好的表和字段自动生成立马可以使用的 API,这些 API 符合一种名为 RESTful 的规范,这种规范是开发者们共同遵守的一种规范,只要看到这个规范,开发者就知道该如何使用这些 API。知道如何使用之后,开发者就可以将这些内容用于实际的应用中(也就是展示给终端用户看),可能是抖音,也可能是微博(这些本质上都是信息管理软件)。

这么做带来的好处是,假如一款产品上线后,产品经理想要新上一个「用户反馈功能」,在没有 Headless CMS 的时候需要开发者在数据库中建一个新的表,然后用一上午的时间调通 API 和图片上传功能,最后再做个界面。有了 Headless CMS 之后就不得了了,产品经理想要用户反馈什么内容直接在后台建好字段,然后 API 就自动生成了,开发者省去了建表、建字段、调 API 的时间,直接进入界面开发了。如果产品经理想修改需求,自己就能直接改,这样不但大幅提升了工作效率,还减少了很多产品经理与程序员之间由于需求变更带来的巨大摩擦,因此世界更加美好了。

这类 Headless CMS 正在开发者圈子中流行开来,开发者开始主动将这类软件用于公司业务中。「Headless CMS」 翻译成中文就是「无头 CMS」,简单来说就是不管界面生成的 CMS,他使用了一种名为「RESTful API」的规范对外提供服务,开发者根据这套规范可以做任何应用。

一旦标准化,就会变成基础设施,内容正在这条路上。

什么是 CaaS

CaaS 是内容基础设施的云上版本,他提供云上的 Headless CMS,并提供公网可用的 API 让开发者可以直接使用,开发者省去了部署运维的精力开销。除此之外,其还有 Headless CMS 不具备的高性能高可用优势。大部分 Headless CMS 是开源的,只能处理百万级别的数据,对于千万或亿级的数据,仍需要做不少优化工作,而 CaaS 将这些也省去了,这就是云计算的好处,标准化一切可以标准化的东西。

企业对于 CaaS 的担忧主要还是安全和隐私问题,也就是大家经常听到的对云计算的质疑 —— 「凭什么我把数据、代码和业务给你,还要给你钱?」

对于中国的企业来说可能还有合规问题。如果在中国做 CaaS,必须投入大量资金和人力到内容审查上。

如果一个 CaaS 能做到垄断做成寡头,那么未来的一个最大的可能就是开放版的微信公众号。通过其 CaaS 平台分发出去的内容不仅有社会大众的娱乐内容,还有很多专业知识,而所有这些内容都是开放可检索的 —— 如果说中国互联网最大的遗憾是什么,那就是大量优质内容无法通过搜索引擎检索,中国只是个互闭网。

CaaS 相比 CMS 的优势

beaad65fc0922bae243fed74b47c7c6d.png

CaaS 相比 CMS 有非常多的优势。

  1. 结构化的内容。CaaS 可以让内容管理者从「管理页面」的思维转向「管理内容」,这将让我们互联网上的内容变得更加专业和优质。
  2. 代码结构优化。传统 CMS 的内容和界面都是耦合十分严重的,像 Wordpress 使用了非常多的自定义指令去表示网页内的信息,从开发者的角度来说,这点是无法忍受的。CaaS 允许内容代码和界面彻底分离,这对开发效率来说会有更大幅的提升,并且符合现代开发框架。
  3. 内容和展示分离。传统 CMS 由于其界面布局等原因会制约内容的发展,有了 CaaS 之后作者只用关心内容而不必关心界面设计,只需要生产优质内容。
  4. 云原生应用。CaaS 是一种云原生应用,也是 SaaS 的一种,云服务提供商会为你安装、维护和做自动伸缩、性能优化等工作,你需要做的只是将内容迁移到 CaaS 和使用。
  5. 个性化。使用 CaaS 可以随心所欲的定义你想要的表和字段,并且有可以立即投入生产环境的接口使用。这在做一些 A/B 测时会非常有用,因为所有的修改都不需要改动底层的数据库或代码结构。

CaaS 的使用场景

总的来说,CaaS 的主要特性就是自由和灵活,以下是依据这些特性的典型使用场景(其实 CaaS 的应用场景非常广泛,几乎所有信息系统都可以用 CaaS 完成,以下只是抛砖引玉):

  1. 多渠道分发。这里的多渠道分发主要是指分发到不同的内容平台上,可能是三端相同的应用,也可能是三端不同的应用。通过 CaaS 的开放 API 特性,作者只需要写一次,就可以重用这些内容,并分发给所有兼容了这些 API 的网站。
  2. 移动应用内容分发。很多移动应用都直接内嵌网页来展示内容,而 CaaS 的 API 允许移动应用在很方便的进行内容展示(传统的 CMS 没有结构化的 API 可用)。
  3. 移动应用后端。移动应用本质上也是信息管理软件,使用 CaaS 管理移动应用的业务逻辑是个不错的解决方案,CaaS 是个成熟的方案,比自己写要容易且稳定很多。
  4. 与身份认证云配套使用。使用身份认证云(如 http://Authing.cn)的用户往往有自定义字段和内容管理的需求,这些在业务层面的功能身份认证云是不提供的,那么 CaaS 便成为了拓展这些字段的一个良好补充。我们所知道的案例是,将 http://Authing.cn 配置进 Strapi(一款 CaaS 产品),登录 Strapi 时使用 Authing 登录,然后携带 Authing 的 Token 访问 Strapi 的资源并进行授权认证。
  5. 个人博客。与传统 CMS 一样,CaaS 也可以作博客,不过需要创作者懂一些编程能力。如果懂编程,CaaS 是个更容易实现个人博客的方案。

一个优秀 CaaS 应该具有的功能特性

作者角度

  1. 体验良好的编辑器。有类似石墨文档或 Notion 的文档编辑体验,让作者尽可能舒适的创作内容。
  2. 简单符合直觉的建表及字段配置。让内容创作者可以很容易管理、修改和与团队协作。

开发者角度

  1. 支持 CRUD 的自动生成并符合 RESTful 规范。
  2. 支持每个 API 逻辑的增加和修改。 开发者可以很方便的无限制的拓展 API 的业务逻辑。
  3. 支持拓展计算能力。 支持函数计算,让开发者可以无限制的拓展平台能力。
  4. 支持数据的授权以及标准认真协议(OAuth 2.0 或 OIDC)。 能基于 RBAC 或 WAC 对数据进行细粒度授权,同时支持 OAuth 2.0 或 OIDC 协议,能兼容各类身份提供商的登录认证,并能使用身份提供商的 Token 授权资源访问。
  5. 高可用高性能。 低时延,快速响应以及完善的日志记录和错误监控。

如何开始使用 CaaS

8cebc0f9ede4a01dfc422d4aaf462170.png
  1. 如果你是 JavaScript 开发者,我们建议到 Github 上搜索 Strapi 使用;
  2. 如果你是其他语言开发者,请到 Google 上搜索 Headless CMS 寻找你想要的语言使用;
  3. 如果你是非工程人员,请到 Google 上搜索 Content as a Service 找到最适合你的在线 CaaS 使用。

获取更多资讯,请访问 Authing 官网。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/410077.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

javascript网页特效_南通建网站哪些,网页设计维护

无锡邦程信息科技有限公司为您详细解读rKXvd南通建网站哪些的相关知识与详情,#末网页设想师根据差别站点的内容微风格,设想出完美的网页效果图。内容填充:不论是个人网站还是企业网站,都必需从内容那个动身点考虑,一个…

request用法_虚拟语气用法总结

虚拟语气主要指的的是带有非真实条件状语从句的复合句,表达的是说话人的遗憾后悔的语气,愿望以及建议,命令,要求等等的情感,往往说的是与事实相反或者没办法实现改变的东西。虚拟语气主要表现为在对过去现在或者将来的…

成为高效程序员的几大搜索技巧

对于缺乏编程知识的人来说,完全有可能编写一个网页或小程序。如果在用Google搜索相关示例时幸运的话,可以搜到现成的代码。即使是经验丰富的程序员,通常也会为了节省时间和精力而在网上搜索解决方案。 如果不借助搜索技术、网络及集体智慧&am…

flink运行原理_Flink运行架构剖析

本文主要介绍 Flink Runtime 的作业执行的核心机制。首先介绍 Flink Runtime 的整体架构以及 Job 的基本执行流程,然后介绍Flink 的Standalone运行架构,最后对Flink on YARN的两种模式进行了详细剖析。Flink Runtime作业执行流程分析整体架构图Flink Run…

vb 获取系统声音的电平_质量好的背景音乐系统套装效果图

笔者是主张低阶设计的,但不一定是越低阶越好,前面已经讲过是以分而治之的手段,达致阴阳融合之目的。分而治之就是把高低音单元的互相不协调的部分和缺点去掉,保留各自的优点,以达到互补融合之目的。有扩声系统中才存在…

vue初级尝试

为了跟上前端后台化的潮流&#xff0c;本少不得不开始关注vue&#xff0c;下列上机代码是针对App.vue进行的更改 数据渲染----一般键值对&#xff0c;数组&#xff0c;对象和对象数组<template><div id"app"><img><h1>{{msg}}</h1><…

钉钉产品介绍_钉钉正式推出智能OA:免费开放、一站解决“人财物事”管理难题...

9月2日消息&#xff0c;阿里钉钉今日正式上线智能OA产品“OA审批”&#xff0c;通过开放工作流、审批流引擎&#xff0c;向中小企业提供场景全面、定制简易、操作门槛低的OA协同服务&#xff0c;实现企业管理流程、业务流程的全链路数字化&#xff0c;一站解决人财物事管理难题…

同方知网软件_国产精品软件天若OCR:支持图像识别/自动翻译/公式识别等

日常生活中有时候我们会遇到某些文件以截图方式发送的 , 想要提取其中的文字内容进行整理就需要靠识别。毕竟如果内容较多的话靠手打可能是个费时费力的事情&#xff0c;OCR识别方面的软件很多但是多数软件都是收费的。在收费软件里自然也有价格便宜和价格比较高的&#xff0c;…

n维椭球体积公式_物质的量浓度公式如何应用

我们常用到的物理量一般有长度、时间、速度等等&#xff0c;物质的量也和这些概念一样&#xff0c;是一个物理量的整体名词&#xff0c;今天小编就为大家介绍一下什么是物质的量&#xff0c;物质的量的浓度公式是什么。1、国际单位制7个物理量长度(单位&#xff1a;m)、质量(单…

Hadoop中RPC机制

Hadoop中RPC机制 RPC(Remote Procedure Call Protocol)远程过程调用协议&#xff0c;它是一种通过网络从远程计算机程序上请求服务&#xff0c;而不需要了解底层网络技术的协议。Hadoop底层的交互都是通过rpc进行的。例如&#xff1a;datanode和namenode 、tasktracker和jobtra…

C++中如何读取一个数的位数_求1000以内的水仙花数

点击上方 蓝字关注我们大家好&#xff0c;我是阿汤哥。看知乎上有朋友说还不明白怎么判断水仙花数&#xff0c;今天我们就来看看这个问题。(PS&#xff1a;“求1000以内的水仙花数”这道题阿汤哥记忆犹新。到现在还记得这是我大一上学期期末考试的编程题。)怎么求水仙花数&…

双向绑定v-bind

通过v-model绑定输出数据<script> export default {data(){return {pagestyle:https://v4.bootcss.com/docs/4.3/dist/css/bootstrap.css,pagecss:https://v4.bootcss.com/docs/4.3/examples/sticky-footer-navbar/sticky-footer-navbar.css,mytitle:v-bind bootstrap样…

xyz坐标图_“色觉地图”的建立(二):辐照度与亮度、rgb空间、“颜色图”的混色方式...

上篇““色觉地图”的建立&#xff08;一&#xff09;&#xff1a;光感受器、色匹配实验与CIE RGB坐标系“中说到&#xff0c;人的色觉是线性的&#xff0c;我们可以用叠加原理“混色”——这意味着色觉的空间固定不变&#xff0c;我们可以任意选择一组基底&#xff08;或说坐标…

Nginx的应用之动静分离

Nginx 的动静分离 我们通过中间件将动态请求和静态请求进行分离&#xff0c;减少了不必要的请求消耗和延时。 动静分离后&#xff0c;即使动态服务不可用&#xff0c;但静态资源不会受到影响。 应用实例 1、准备环境 系统角色主机名IP服务CentOS 7.2反向代理Nginx_Proxy192.168…

3d打印英语文献_锐医学院 | 只需10分钟!解读康复医学文献+英语学习

文献解读英语学习只需10分钟锐医学院致力于专业康复教育培训同时&#xff0c;也在康复领域专家的合作下&#xff0c;一直在研究康复领域最前沿所取得的研究成果、存在的问题以及发展趋势进行系统和全面的叙述和评论与各领域康复专业人士分享。文献解读有助于发现前沿性问题&…

node.js通过回调函数获取异步函数的返回结果

html文件代码<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>我的node.js首页</title> </head> <body></body> </html> 通过buffer流读取html文件var fs require(fs);…

bigdecimal 保留两位小数_一律使用 BigDecimal,避免后患?

你知道的越多&#xff0c;不知道的就越多&#xff0c;业余的像一棵小草&#xff01;你来&#xff0c;我们一起精进&#xff01;你不来&#xff0c;我和你的竞争对手一起精进&#xff01;编辑&#xff1a;业余草zhuanlan.zhihu.com/p/94144867推荐&#xff1a;https://www.xttbl…

tcp 四次挥手_tcp三次握手和四次挥手

SYN&#xff1a;一个很小的包&#xff0c;tcp的第一个包&#xff08;同步序列编号&#xff09;ACK:确认响应SYN、ACK:为1表示确认连接FIN表示关闭连接&#xff0c;PSH表示有 DATA数据传输&#xff0c;RST表示连接重置。Acknowledge number(ack)&#xff1a;确认号&#xff0c;大…

ssh登录服务器提示错误no hostkey alg

ssh登录服务器提示错误no hostkey alg ssh root192.168.1.100 -vvv提示失败&#xff1a;no hostkey alg 登录到192.168.1.100服务器 rm -rf /etc/ssh/ssh*key systemctl restart sshd #我还是移走了&#xff0c;没有删除。因为之前安装了telnet服务&#xff0c;因此不用担心连…

ms查约束具体代码_ECCV 2020附代码论文合集(CNN,图像分割)

ECCV 2020 共接受 1361 篇论文&#xff0c;涵盖了包括目标检测&#xff0c;语义分割&#xff0c;图像分类&#xff0c;点云&#xff0c;图像重建&#xff0c;神经网络模型等热门主题。对计算机视觉感兴趣的小伙伴们也许你们已经阅读完论文并对论文的内容跃跃欲试了吧&#xff0…