我特别喜欢shell_plus,可以在 Python shell 中自动加载数据库模型,以及 runserver_plus 用于由 Werkzeug 提供支持的改进的本地 Web 服务器。...该软件包通过与最流行的电子邮件服务提供商(包括 Amazon SES、MailGun、SendGrid 等)无缝集成,使其变得容易。...Wagtail 由 Torchbox 的开发团队维护,拥有自己的第三方软件包、会议和提供新功能和版本的大型社区的生态系统。...您可以用一行代码创建许多对象,从而节省大量开发人员的时间。 whitenoise[17] 网站需要一种方法来提供静态文件,在 Python 生态系统中,默认选择是 WhiteNoise。...通过几行配置,WhiteNoise 将您的静态文件转换为一个独立的单元,可以部署在任何地方,而无需依赖 nginx、Amazon S3 或任何其他外部服务。
下面,我会根据功能将项目分为:传统 CMS 和 无头 CMS 两大类进行介绍,然后从 CMS 概念到具体项目的安装步骤,最后特点会用 粗体 醒目的标记出来,就算之前不知道 CMS、不会编程的读者,也可以放心地阅读...国人开发的好处是可轻松接入国内的云存储服务,而且文档、社区和操作界面全部是中文的。 安装步骤,如下: # 本地有 Java 1....它具有较强的通用性,再加上丰富多元的扩展,可用来搭建商业网站、个人博客、信息管理系统、Web 服务等。作为开源至今已有 18 年历史的 CMS,肯定还是有点东西的。...它的强大之处在于提供了丰富、免费、可自定义的主题,用户可以自由搭配轻松建站。专业的会员订阅和数据可视化功能,让内容创作者可以围绕内容,尝试发展商业化业务。除此之外,它还拥有先进的所见即所得编辑器。...我做了 5 年的站长,现在烟已经戒掉了。 以上就是本文的所有内容了,由于篇幅问题没有写静态网站生成器相关的开源项目,后面我会专门再做一期。 - END -
Wagtail 是一个基于 Django 的开源内容管理系统,拥有强大的社区和商业支持。它专注于用户体验,并为设计人员和开发人员提供精确控制。...那么结合cpolar内网穿透可以进行公网远程访问,实现花更少的时间进行配置,而将更多的时间用于完善您的网站。本篇文章介绍如何安装运行Wagtail,并实现公网访问网站界面。 1....安装cpolar内网穿透工具 上面在本地成功安装了Wagtail,并局域网访问成功,下面我们安装Cpolar内网穿透工具,通过cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问...| sudo bash 向系统添加服务 sudo systemctl enable cpolar 启动cpolar服务 sudo systemctl start cpolar cpolar安装成功后,...使用上面的cpolar https公网地址在任意设备的浏览器访问,即可成功看到Wagtail的欢迎界面,这样一个公网地址且可以远程访问就创建好了,无需自己购买云服务器,即可发布到公网访问。
一、Cloud Studio平台介绍 1.1 Cloud Studio简介 Cloud Studio 是基于浏览器的集成式开发环境(IDE),为开发者提供了一个永不间断的云端工作站。...支持远程访问云服务器,为腾讯云 SCF 行业用户提供开发-测试-部署完整闭环的云原生开发体验 。 自研多款插件以满足开发需求,例如协作插件、自定义模板插件、预览插件、部署插件等,助力施展编程潜能。...远程访问云服务器: Cloud Studio 支持您连接自己的云服务器,这样就可以在编辑器中查看云服务器上的文件,进行在线编程和部署工作。...它优雅、强大、敏捷,专注于灵活性和用户体验,为开发人员提供一个快速有吸引力的界面,可以直观地创建和组织内容。Wagtail专注于用户体验,并为设计人员和开发人员提供精确的控制。...systemctl restart nginx 八、测试访问云主机的Wagtail服务 访问地址:http://1.13.24.126/,访问Wagtail首页。
虽然对你的响应式图像标记不可能有一个放之四海而皆准的方法,但这些系统提供了合理的默认值、配置选项和API挂钩,以以便简化其实现。...与任务运行器不同,静态网站生成器可以直接了解这些库的配置和使用情况,以及为生产网站生成的标记--这意味着它可以做更多的事情来自动化我们的响应式图像标记。...当通过WordPress管理界面上传图像时,该源图像被用来在服务器上生成面向用户的文件,就像在你的本地机器上一样。...也许最令人兴奋的是,像Jetpack的网站加速器(以前的 "Photon")这样的插件可以为编码提供服务器端的协商,确保用户将收到他们的浏览器能够支持的最小、最有效的编码,而不需要和类型标记模式...所有这些也适用于像Shopify这样的托管CMS解决方案,尽管机制本身会有些不同:通过元素提供类似的钩子来生成备用的图像源和相应的srcset属性和艺术指导。
1、manage.py是Django项目通用的管理脚本(通过python manage.py 某命令参数使用)。...5、search则是自动生成的提供搜索功能的app文件夹,由于基于wagtail.wagtailsearch所以只包含了views.py视图文件和templates模板文件夹。暂时不管。...此外,对于TopLink和LittleIntros我们需要另外新建两个继承wagtail提供的Orderable(使有序)的非页面模型。 ?...还包含了一个wagtail提供的对ForeignKey进行了一层封装的ParentalKey外键连接到它所属的WikiHome页面。类似的,panels表明出现在可编辑区。 ? ?...在wiki文件夹下的models.py文件旁新建一个snippets.py文件 实际上,它还是创建了一个Django模型,只包含了一个富文本字段,但是利用Wagtail提供的register_snippet
他们会将用户浏览器,屏幕,连接等的详细信息通知服务器。因此,服务器可以决定如何用适当大小的图像填充布局,并仅以所需格式提供这些图像。...通过客户端提示,我们将资源选择从 HTML 标记移到了客户端和服务器之间的请求-响应协商中。...正如 Ilya Grigorik 所指出的那样,客户的提示令响应式图像的应用更加完整-它们不是响应式图像的替代方案。“ 元素在 HTML 标记中提供了必要的艺术方向控制。...但是,如果同时为客户端提示提供正常的响应图像标记和 标签,则浏览器将评估响应图像标记,并使用客户端提示的 HTTP 标头返回适当的图像资源。 还不够好?...网页字体处理的未来如何?
简单来说,Alpha 混合方式用于控制半透明效果的实现方式;处置方式用于说明下一帧将展示时,当前帧应如何处理。...WebP 格式各分块 三、性能对比与解释 Android 通过 FrameSequence 库,提供了 GIF 和 WebP 格式的动态图片展示能力。...通过 FrameSequence 库 Demo,在接入 libgif 和 libwebp 两个官方提供的编解码库后,设定图片尺寸、帧率、机型、格式、同时展示的实例数等前置条件,对比各主要性能参数。...WebP 采用 Chunk 组织各个数据区域,便于直接通过 Chunk 大小完成寻址;GIF 的分块采用起始/结束标记实现,拆分分块需要读取起始标记后的整个数据流,造成确定分块的速度偏慢。...、文件大小和图片质量,APNG 和 WebP 会提供更优的表现。
CDN会一定程度上提升项目中的静态文件的传输速度,在vue-cli3中可以通过externals配置项,将第三方的类库的引用地址从本地指向你提供的CDN地址 externals只适用于ES Module...这里通过环境变量来判断生产环境才启用CDN,除了需要开启CDN外,你还需要在index.html注入CDN的域名,所以我这里通过html-webpack-plugin根据cdn域名动态的注入script...,在空闲时间加载被标记为prefetch的资源 dns-prefetch dns-prefetch可以让浏览器提前对域名进行解析,减少DNS查找的开销,如果你的静态资源和后端接口不是同一个服务器的话,可以将考虑你后端的域名放入...但是我们仍可以在支持webp图片的浏览器中使用它,而在不支持的浏览器提供png图片 ?...picture标签包裹2个source标签,一个提供webp图片,通过srcset属性让浏览器从上到下选择可以支持的图片格式,如果浏览器不支持webp图片会只使用第二个source,会回退到png图片,
2,On Demand Resources(按需加载资源) ODR主要是为游戏多关卡场景服务的,它会根据用户的关卡进度下载随后几个关卡的资源,并且已经过关的资源也会被删掉,这样就会减少初装APP的包大小...来开启BitCode,如下图: 那么,如何在我们自己的项目中使用App Thinning呢?...这个删除操作你可以使用NSFileManager系统类提供的功能来完成。...Google在开源 WebP 的同时,还提供了一个图片压缩工具 cwebp 来将其他图片转成WebP。cwebp如何使用,可自行百度。...是无用的实例变量,Unused local variable是无用的局部变量,Unused value是无用的值; 无用宏:Unused macro是无用的宏; 无用全局:Unused global declaration
WEBP WEBP 是 Google 开发以更高的压缩比替代 JPEG。它用 VP8 视频帧内编码作为其算法基础,拥有很不错的压缩效果,同时提供了有损压缩与无损压缩(可逆压缩)的方式。...在端内我们通过 hook 图片请求,在请求头的 accept 中携带 image/avif 标记当前环境支持 AVIF 类型图片。...此外,腾讯云数据万象与CDN服务实现了打通,仅需在腾讯云CDN控制台开启配置开关,即可实现域名级别的批量图片优化,十分便捷: 在端内图片解码上,由腾讯云数据万象提供的腾讯自研解码库,可以免费集成。...有自研实验室提供的编解码配套服务,性能与稳定性都有了可靠的保证。...如何通过驱动技术迭代,实现更低的成本和更高的收益,成为开发者必须面临的问题。欢迎分享你所在技术团队「降本增效」的技术案例/感想。 在评论区聊一聊你的看法。
静态资源的压缩与合并我们在开发的时候会习惯缩进和写注释,方便我们在日常的维护,但将代码上传至服务端后,我们完全可以把那些空格、制表符、换行符进行压缩,以此减少请求资源的大小;同样的,我们在服务端所引用的第三方库进行合并...无效字符的删除,剔除注释,代码语义的缩减和优化(变量名过长,使用其他字符进行代替),代码保护代码压缩可以使用 开源中国_在线工具 进行压缩,不过这种方式面对需要大量压缩的代码会显得效率低下,推荐大家使用...,是将整个过程通过框架进行接管的我们在标记 JS 文件是否被更改时,通常会在该 JS 文件后加一个 MD5 戳,用来唯一标识该 JS 文件是否被更改,若是合并前的任一个文件有改动,那么合并后的整个文件缓存都会失效文件合并的方式同样可通过在线网站或...制作一个网站在浏览器端是如何进行渲染的呢?...,HTML 文档中会通过 标签进行 CSS 资源引入,此时浏览器就会 **并发** 的向互联网或 CDN 请求相关的静态资源,请求回来之后的 CSS 资源同样会被浏览器解析,根据选择器进行匹配并生成相应的
本课程中的所有语法——从图像数据的编码到支持响应式图像的信息密集标记语言——都是机器与机器之间通信的方法。 客户端浏览器与服务器相互通信有许多方式。...同样地,无论是通过插件、外部库、独立构建过程工具还是负责使用客户端脚本,响应式图像标记语言都很容易适应自动化。...在本模块中,你将了解一些管理图像的常用方法,作为现代工作流程的一部分,无论是作为开发过程中的一个自动化阶段,还是通过为你的网站提供动力的框架或内容管理系统,或者通过专门的内容交付网络几乎完全抽象化。...尽管由服务器呈现的标记发起的图像请求过于迅速,以至于 JavaScript 无法生成客户端大小属性,但如果这些请求是由客户端发起的,则不能应用同样的推理。...请记住,这种方法意味着牺牲了服务器呈现的标记和浏览器内置的速度优化的可靠性,只有在页面呈现后才启动这些请求将对您的 LCP 评分产生过度负面影响。
据不完全统计,腾讯视频各端日均图片下载次数超过 100 亿次,平均图片大小超 100kb,由此带来的图片静态带宽成本月均超千万。如何在保证用户体验的前提下降低图片带宽成本,便成为了团队的重点课题。...WEBP WEBP 是 Google 开发以更高的压缩比替代 JPEG。它用 VP8 视频帧内编码作为其算法基础,拥有很不错的压缩效果,同时提供了有损压缩与无损压缩(可逆压缩)的方式。...在端内我们通过 hook 图片请求,在请求头的 accept 中携带 image/avif 标记当前环境支持 AVIF 类型图片。...此外,腾讯云数据万象与CDN服务实现了打通,仅需在腾讯云CDN控制台开启配置开关,即可实现域名级别的批量图片优化,十分便捷: 在端内图片解码上,由腾讯云数据万象提供的腾讯自研解码库,可以免费集成。...有自研实验室提供的编解码配套服务,性能与稳定性都有了可靠的保证。
最后,您将探索两种向访问者提供WebP图像的方法。 准备 使用WebP图像不需要特定的分发,但我们将演示如何在Ubuntu和CentOS上使用相关软件。...WebP图像的基础,因为您需要WebP格式的所有图像的工作版本才能为访问者提供服务。...现在可以试着向您的网站用户提供WebP图像的选项了。 第五步 - 使用HTML元素向访问者提供WebP图像 在此步骤中,我们将解释如何使用HTML元素提供WebP图像。...既然您已经知道如何直接从HTML代码提供.webp图像,那么让我们看看如何使用Apache的mod_rewrite模块自动化这个过程。...当您通过Chrome访问http://your_server_ip/webp/img.html时,您会注意到所提供的图像是.webp版本。如果您使用Firefox,您将自动获得.png图像。
当然,只看官方文档是不够的,需要进一步查阅源代码方能理解SDWebImage的功能。 该库提供了具有缓存支持的异步图像下载器。...支持的图像格式 ---- UIImage支持的图像格式(JPEG,PNG,...)包括GIF WebP格式,包括动画WebP(使用WebP subspec) 3....注意:仍然有一个向后兼容的功能,所以如果你仍然试图用UIImageView加载一个GIF,它将只显示第一帧作为静态图像。...它完全无视HTTP服务器返回的各种缓存控制头,并缓存返回的图像且不受时间限制。这意味着您的图像URL是指向永远不会改变的图像的静态网址。如果指向的图像发生变化,则网址的某些部分应当相应更改。...如果您无法控制您正在使用的图像服务器,那么当内容更新时,您可能无法更改该URL。例如,Facebook头像URL就是这种情况。
或者你可以很好地运用这个开源软件,成为它的一个用户;或者你可以阅读它的源码,从中学习技巧;甚至你可以通过参与该软件的开发,来获得经验和名声。只要用心,每一个好的开源软件都是一座富矿。...1、Wagtail CMS Wagtail是一个基于Django的CMS系统,它拥有优质的用户体验,并且为设计人员和开发人员提供了高度定制的接口。...这样你就不必自己写一大堆很显然别人早就写过的生成假数据的函数了。它就是那种你看了一眼就决定关注的项目。 4、Python Fire 这是一个为你的脚本生成命令行工具的库。...github地址:https://github.com/google/python-fire 5、sentry Sentry是一个帮你监控崩溃信息的服务。...它的服务是用Python编写的,但是它提供各种语言的接口。 github地址:https://github.com/getsentry/sentry
"> 在这里,任何支持WebP编码的浏览器都将识别元素的type属性中指定的image/webp媒体类型,选择该元素,并且由于我们只在srcset中提供了一个候选项...无论用户的浏览上下文如何,这一切都通过单个文件传输实现,而不会浪费带宽在不能呈现的图像源上。...如果你发现自己认为这些标记模式有很大的改进空间,那么你是完全正确的。从一开始,这些标准就旨在为未来的技术提供基准。...所有这些解决方案都必须依赖标记,以便包含在服务器的初始负载中,并及时到达浏览器请求图像源,这一限制导致了明显笨重的sizes属性。...虽然响应式图片标记承诺随着时间的推移只会变得更易于使用,但像任何 Web 技术一样,有许多服务、技术和框架可用于帮助减轻手写此标记的负担。
2、为什么是WebP WebP 是 Google 推出的一种同时提供了有损压缩与无损压缩(可逆压缩)的图片文件格式。...三、图片服务 1、素材服务 悟空中台的素材服务架构如下图所示,在 node server 节点中,我们集成了图片转 WebP 以及转码后文件存储的服务。...模块提供了 Node.js 使用 cwebp 能力进行图片压缩转码的接口,我们的图片压缩服务引入该模块模块实现常见格式图片到WebP的转码。...,在 WebP 图片的文件名后追加“nwebp”字符串标记,以便前端识别; 将编码后的 WebP 文件和源文件一同上传至文件服务器,并拿到返回的 URL; 将图片名称、存储资源路径等存储至素材中心服务数据库中...canvas.toDataURL('image/webp').indexOf('image/webp') === 5 : false })() (2)素材加载 前面讲解了后台图片压缩和存储服务的设计,接下来我们来一起了解一下前端逻辑上是如何加载
如何解释 JavaScript 中的闭包以及何时使用它? 当子函数保持父级作用域的环境时,即使在父级函数已经执行之后,也会创建闭包。闭包是与函数相关的本地声明变量。闭包将在使用它们时更好地控制代码。...如何在 JavaScript 中从超链接中定位特定元素? 这可以通过使用超链接中的目标属性来完成。...编写 JavaScript 中显示的错误? JavaScript 中有三种不同类型的错误。 语法错误:语法错误是打算用特定编程语言编写的字符或标记序列的语法错误。...JavaScript 它是Netscape开发的一种脚本语言。 它用于设计客户端和服务器端应用程序。 它完全独立于Java语言。 Jscript 它是Microsoft开发的一种脚本语言。...如何使用任何浏览器进行调试? 通过按 F12,我们可以触发任何浏览器的调试模式,并可以通过点击控制台来查看结果。 18.什么是JavaScript提升?
领取专属 10元无门槛券
手把手带您无忧上云