1 软件引擎的基本含义 #
引擎(Engine) 是汽车发动机的隐喻。
软件引擎是复杂软件系统的核心组件。
- 引擎本身通常没有独立的用户界面 - 它们不是应用程序。
- 引擎的一个显著特征是它以API的形式呈现。
- 引擎可以用来产生更高级别的服务,即应用程序,并且应用程序开发者或管理者可以选择将该服务成为“引擎”。
2 软件引擎的例子 #
软件行业的例子:
- 数据库引擎(database engines)
- 图形引擎(graphics engines)
- 搜索引擎(search engines)
- 游戏引擎(game engines)
网络浏览器的例子:
- 浏览器引擎(browser engine)
- JavaScript引擎
2.1 数据库引擎 #
数据库引擎(或存储引擎)是数据库管理系统(DBMS)用于从数据库创建、读取、更新和删除(CRUD)数据的底层软件组件。大多数数据库管理系统都包含自己的应用程序编程接口(API),允许用户与其底层引擎交互,而无需通过DBMS的用户界面。
- 术语“数据库引擎(database engine)”经常与“数据库服务器(database server)”或“数据库管理系统(database management system)”互换使用。
- “数据库实例(database instance)”是指正在运行的数据库引擎的进程和内存结构。
经常看到的MySQL存储引擎有InnoDB、MyISAM。