In the last couple of months, I led a team to build a comprehensive and open-sourced solution that helps customers analyze clickstream events on the cloud. The solution provides data autonomy, allowing users full access to raw data, near real-time ingestion, flexible configurations, and cost-effectiveness. It is a …
Read MoreThis post explores the web console module of the clickstream solution. The web console allows users to create and manage projects with their data pipeline, which ingests, processes, analyzes, and visualizes clickstream data. In version 1.1, the Analytics Studio was introduced for business analysts, enabling them to …
Read MoreServerless computing is all the rage, promising pay-as-you-go magic and freedom from infrastructure woes. But what about serverless for data warehouses? Let's delve into the fascinating (and sometimes confusing) world of Redshift Serverless: its cost structure, ideal use cases, and situations where it might not be the …
Read MoreAWS在3月12日正式发布了新一代的API网关 -- HTTP APIs。AWS发布的第一代API Gateway服务已经快5年了,通过这些年来大规模服务客户的心得以及客户反馈,由此重新构建了更快(相比第一代网关60%的延迟减少)、更便宜(至少节省71%的费用)、更易用的第二代网关服务。 除了性能、费用、易用性的大幅度改进之外,在HTTP APIs发布博客中着重介绍了以下新特性, HTTP APIs网关可同私有VPC内的负载均衡(ALB/NLB),服务发现(Cloup Map)集成。意味着可将目前最流行且普遍应用的容器服务作为API后端 可以将自定义域名的API路径混合映射到第一代的REST APIs和最新的HTTP APIs 请求 …
Read MoreSpring Cloud Function -- 跨Serverless平台的函数计算框架
Jun 28, 2019 · 3 min read · 云计算 FaaS 函数计算 AWS AWS Lambda 钉钉 dingtalk Serverless Computing Spring Spring Cloud Function ·基于serverless框架的钉钉回调函数中介绍了serverless framework,一款支持跨云厂商/Serverless平台的部署工具。但是函数代码还是需要针对不同的serverless平台作对应的适配。而Spring Clound Function就是针对这种情况专门开发的跨serverless平台的框架,实现一套代码通过不同的打包实现跨serverless平台。Spring Clound Function目前支持AWS Lambda, Microsoft Azure Function以及Apache OpenWhisk。 这里我们继续使用无函数版本的钉钉回掉函数来演示Spring Clound Function for …
Read MoreServerless Framework是一个开源命令行工具。他提供函数脚手架、流程自动化、最佳实践等帮助开发、部署跨云厂商的托管无服务器计算服务(官方已支持aws, Azure, GCP, IBM Cloud等各种厂商的无服务器计算)。同时支持使用插件来扩展各种功能,比如支持更多云厂商无服务器计算服务,例如阿里云的函数计算。 这里使用基于函数计算的钉钉回调函数接口示例来演示如何使用Serverless Framework将一个无服务器函数部署到AWS Lambda。 安装servereless后,可以通过serverless create命令创建函数脚手架工程,或者在已有工程的下创建serverless配置文 …
Read More在基于函数计算的钉钉回调函数接口中使用钉钉回调函数案例实践了AWS Lambda无服务函数。该示例中,我们将自定义的函数代码及依赖的第三方库(比如json处理库jackson, 钉钉openapi加密库, aws dynamodb client等)整体打包为一个部署包,上传到lamdba代码仓库用于函数执行。 然而实际项目中,其实有大量的相关函数可能会共享这些基础依赖库、三方函数库(比如headless chrome(Puppeteer), pandoc, OCR library -- Tesseract等等)或者使用自定义runtime(如官方未支持的java11)的需求。AWS Lambda在去年底发布了Lambda …
Read More基于函数计算的钉钉回调函数接口
由于企业内部管理的需要,用到了钉钉的业务事件回调能力,正好将这个轻量级的接口使用无服务器技术来实现部署,以应对流量无规律下的动态扩展伸缩、按需使用、按量计费等需求。 阿里云函数计算版本 由于公司系统部署在阿里云,首先选择使用阿里云函数计算来实现及部署。该接口使用了JVM上语言Kotlin开发,虽然阿里云函数计算官方支持的开发语言有Java但没有Kotlin。其实无论Java或Kotlin最终部署文件都是Java Class字节码,加上Kotlin与Java良好的互操作性,实测函数计算可以完美支持Kotlin开发(个人认为任意JVM上的开发语言都是支持的)。 同时该函数使用了表格存储来持久化回调事件。表格存储是个按量计费的分布式存储, …
Read MoreServerless Computing(无服务器计算)是目前最被看好的云端计算执行模型。其最大的好处是提供分布式弹性可伸缩的计算执行环境,仅为实际使用资源付费,并且将应用维护者从常规的运维事务中解放出来,更利于专注到具体的业务上。 在主流的应用部署方式下,无论是使用云主机还是Kubernetes作为运行环境,都会有大量运维层面的事务需要考虑和处理,并且应用程序需要按照分布式程序的设计准则来应对应用的水平伸缩。同时随着云计算服务的发展和完善,云计算厂商提供了越来越多的基础服务,例如API网关、对象存储、消息队列、日志、监控等服务,函数计算可以完美的同其他云服务集成,帮助用户快速实现出生产级别的弹性可伸缩的应用。 那函数计算是什么呢? …
Read More