0%

关于Ceph的介绍本文不再赘述,可以查看官方文档进行了解

Sage Weil读博士的时候开发了这套牛逼的分布式存储系统,最初是奔着高性能分布式文件系统去的,结果云计算风口一来,Ceph重心转向了分布式块存储(Block Storage)和分布式对象存储(Object Storage),现在分布式文件系统CephFS还停在beta阶段。Ceph现在是云计算、虚拟机部署的最火开源存储解决方案,据说有20%的OpenStack部署存储用的都是Ceph的Block Storage。

阅读全文 »

MariaDB作为Mysql的一个分支,在开源项目中已经广泛使用,例如大热的openstack,所以,为了保证服务的高可用性,同时提高系统的负载能力,集群部署是必不可少的。

MariaDB Galera Cluster 介绍


MariaDB集群是MariaDB同步多主机集群。它仅支持XtraDB/ InnoDB存储引擎(虽然有对MyISAM实验支持 - 看wsrep_replicate_myisam系统变量)。

阅读全文 »

很多类型的应用程序需要在特定事件发生时提醒用户,而常用的通信方法是电子邮件。虽然Python标准库中的smtplib包可用在Flask程序中发送电子邮件,但包装了smtplib的Flask-Mail扩展能更好地和Flask集成。

使用Flask-Mail提供电子邮件支持


使用pip安装Flask-Mail:

阅读全文 »

数据库按照一定规则保存程序数据,程序再发起查询取回所需的数据。Web程序最常用基于关系模型的数据库,这种数据库也称为SQL数据库,因为它们使用结构化查询语句。不过最近几年文档数据库键值对数据库成了流行的替代选择,这两种数据库合称NoSQL数据库。

阅读全文 »

Flask——程序的基本结构中介绍的请求对象包含客户端发出的所有请求信息。其中,request.form能获取POST请求中提交的表单数据。

尽管Flask的请求对象提供的信息足够用于处理Web表单,但有些任务很单调,而且要重复操作。比如:生成表单的HTML代码和验证提交的表单数据。

阅读全文 »

浏览器的主要功能


浏览器的主要功能是将用户选择的WEB资源呈现出来,它需要从服务器请求资源,并将其显示在浏览器窗口中,资源的格式通常是HTML,也包括PDF、image及其他格式。用户用URL来指定所请求资源的位置。HTML和CSS规范中规定了浏览器解释HTML文档的方式,由W3C组织对这些规范进行维护,W3C是负责制定WEB标准的组织。

阅读全文 »

要想开发出易于维护的程序,关键在于编写形式简洁且结构良好的代码。视图函数的作用很明确,即生成请求的响应,对最简单的请求来说,这就足够了,但一般而言,请求会改变程序的状态,而这种变化也会在视图函数中产生。

例如:用户在网站中注册了一个新账户。用户在表单中输入电子邮件地址和密码,然后点击提交按钮。服务器接收到包含用户输入数据的请求,然后Flask把请求分发到处理注册请求的视图函数。这个视图函数需要访问数据库,添加新用户,然后生成响应回送浏览器。这两个过程分别称为业务逻辑表现逻辑

阅读全文 »

初始化


所有Flask都必须创建一个程序实例。Web服务器使用一种名为Web服务器网关接口的(Web Server Gateway Interface,WSGI)的协议,把接收自客户端的所有请求都转交给这个对象处理。程序实例是Flask类的对象,经常使用下述代码构建:

1
2
from flask import Flask
app = Flask(__name__)
阅读全文 »