Pushup —— Go Web 框架
Pushup 是一个实验性的新项目,使用 Go 创建现代、面向页面的 Web 应用。Pushup 旨在探索使用 Go 轻松构建面向页面的服务器端 Web 应用程序。
Pushup 主要包含以下功能:
- 固定的 project/app 目录结构,支持基于文件的路由 (file-based routing)
- 可替代传统 Web 框架目标的轻量级标记语法 (lightweight markup),将用于控制流的 Go 代码和命令式、类似视图控制器的代码与 HTML 标记相结合
- 解析上述标记语法并生成纯 Go 代码的编译器 (compiler),在 Go stdlib
net/http
包之上构建独立的 Web 应用程序
示例代码
^import "time"
^{
title := "Hello, from Pushup!"
}
<h1>^title</h1>
<p>The time is now ^time.Now().String().</p>
^if time.Now().Weekday() == time.Friday {
<p>It's Friday! Enjoy the start to your weekend.</p>
} ^else {
<p>Have a great day, we're glad you're here.</p>
}
File app/pages/hello.up → /hello URL path
Pushup 示例应用的目录结构
/path/to/mypushupapp
├── layouts
│ └── default.up
├── pages
│ └── index.up
├── pkg
│ └── app.go
└── static
├── app.css
└── htmx.min.js

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
每日一博 | 一次 JVM GC 长暂停的排查过程
作者:京东科技 徐传乐 背景 在高并发下,Java程序的GC问题属于很典型的一类问题,带来的影响往往会被进一步放大。不管是「GC频率过快」还是「GC耗时太长」,由于GC期间都存在Stop The World问题,因此很容易导致服务超时,引发性能问题。 事情最初是线上某应用垃圾收集出现Full GC异常的现象,应用中个别实例Full GC时间特别长,持续时间约为15~30秒,平均每2周左右触发一次; JVM参数配置“-Xms2048M –Xmx2048M –Xmn1024M –XX:MaxPermSize=512M” 排查过程 Ø 分析GC 日志 GC 日志它记录了每一次的 GC 的执行时间和执行结果,通过分析 GC 日志可以调优堆设置和 GC 设置,或者改进应用程序的对象分配模式。 这里Full GC的reason是Ergonomics,是因为开启了UseAdaptiveSizePolicy,jvm自己进行自适应调整引发的Full GC。 这份日志主要体现GC前后的变化,目前为止看不出个所以然来。 开启GC日志,需要添加如下 JVM 启动参数: -XX:+PrintGCDetails ...
-
下一篇
你的 VS Code 扩展值得信赖吗?
Aqua Nautilus 研究人员最近发现,攻击者可以轻松地冒充流行的 Visual Studio Code 扩展并诱骗不知情的开发人员下载它们。VSCode 是迄今为止最受欢迎的 IDE;StackOverflow的一项调查指出,其目前已被74.48% 的开发人员所使用。VSCode 的强大之处在于其种类繁多的扩展,VSCode Marketplace中共有超过 40,000 个扩展。 作为 VSCode 用户,所使用的 VSCode 扩展是否值得信赖或合法也是一个问题。根据介绍,虽然有几种功能有助于保护开发人员免受恶意扩展的侵害。譬如,微软保证对每个新扩展和每个扩展更新都运行病毒扫描。在扫描结果一切正常之前,该扩展不会发布在 Marketplace 上供公众使用。以及采取了一些措施来防止名称抢注,即名称故意与知名名称相似。开发人员还可以观察扩展是否有蓝勾,该标识意味着发布者已经验证了一个 web 域名的所有权(有些正版扩展也并没有进行验证,如 Prettier 等)。 Marketplace 中的热门扩展 但研究人员指出,即使对于具有安全意识的开发人员来说,想要准确区分恶意和良性...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- MySQL数据库在高并发下的优化方案
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8编译安装MySQL8.0.19