学习erlang有一段时间了,也尝试着写了几个练手的小程序,可以说,已经入门了。想要更进一步的话,就需要真正实施一个项目。确定了一个目标(有可以参考的开源项目,又没有基于erlang的实现),收集了一些资料,项目开始。
开始一个项目,首先要考虑搭建一个什么样的代码框架。要确定在代码框架中,有哪些目录,有哪些基本的代码文件等等。通常,在erlang项目中基本目录包括:ebin、doc、src。最基本的代码文件包括:XXXX.app、XXXX.hrl、XXXX.erl、XXXX-app.erl、XXXX-sup.erl......。
练手时,曾经用mochiweb构建了一个小的web程序。对于mochiweb,我是蛮喜欢的,条理清晰、易于理解、上手也简单。因此,在考虑如何搭建代码框架时,自然想到了mochiweb。mochiweb中有一个脚本(scripts/new_mochiweb.erl),通过它可以利用mochiweb提供的一套模板(priv/skel),快速搭建一套代码框架---只要确定好项目名称即可。
escript scripts/new_mochiweb.erl 项目名称 目录。
最好是把目录项加上,可以在指定目录下创建新项目,一次性搞定,不需要在手工移动。
在完成基本的代码框架后,忽然发现,仅仅使用mochiweb提供的一套模板,对mochiweb来说,实在是太屈才了,并没有充分发挥mochiweb的作用。
可以用javascript + mochiweb搭建一个用于日常系统维护工作的管理子系统。mochiweb的小巧、简单易用、可与系统其它部分无缝连接的特点,使得基于mochiweb的管理子系统,成为一个极好的选择。
显然,mochiweb全身是宝。能够一点不浪费地应用到任何一个erlang项目中去。从mochiweb开始erlang之旅,可以获得一个良好的开端。
分享到:
相关推荐
- **启动脚本**:`.sh` 或其他脚本文件,用于启动和停止 Erlang 项目。 - **README** 或其他文档:可能包含有关如何运行、测试和理解示例的说明。 学习这个 "erlang mochiweb-test demo",你可以深入理解 Erlang ...
通过阅读和实践提供的压缩包文件中的例子,你可以进一步理解Mochiweb的工作原理,以及如何在实际项目中集成和使用它。记得,实践是检验知识的最好方式,动手尝试创建自己的Web服务器,你会发现Mochiweb的强大和灵活...
2. **rebar3与Websocket**:在rebar3项目中,可以通过编写`cowboy`或`mochiweb`的启动脚本来设置Websocket路由和处理函数。rebar3的自动编译和依赖管理特性使得在开发过程中无需手动管理依赖,提高开发效率。 四、...
erlang + delphi demo with Web UI`可能是通过Web界面展示Erlang和Delphi的集成,这可能使用了Erlang的Web开发框架,如Yaws或Mochiweb,与Delphi后端进行交互。 - `12. erlang demo with hot update`可能展示了...
1. **Mochiweb**:Mochiweb是一个用Erlang编写的轻量级Web服务器和HTTP库。它提供了一个简单的API,允许开发者直接处理HTTP请求和响应。Mochiweb的核心特点包括非阻塞I/O模型,使得它在处理大量并发连接时表现出色。...
Erlang 是一种面向并发和分布式系统的编程语言,特别适合构建高可靠性、容错性强的系统,如Web服务器。在上述代码中,我们看到的...在实际开发中,通常会使用像YAWS、Mochiweb或Cowboy这样的成熟Erlang Web服务器框架。
Rebar是Erlang项目的构建工具,它支持创建新项目、编译、打包以及与版本控制系统如Git的集成。Cowboy是一个高性能的Erlang web服务器,专为嵌入式和微服务架构设计。还有Mochiweb2库,它提供了处理JSON数据类型的...
3. **启动服务器**: 在Erlang shell中启动elli服务器。 4. **编写回调**: 实现elli提供的回调接口,处理HTTP请求。 5. **测试与调试**: 使用curl或其他HTTP客户端测试接口,调试应用程序。 **elli与其他Erlang Web...
1. **启动HTTP Server**: 使用Erlang的HTTP框架启动一个服务器,暴露Prometheus的metrics端点。 2. **注册Collectors**: 在应用启动时,将Collectors添加到默认的Registry。 3. **更新Metrics**: 应用运行时,根据...
在实际项目中,通常会使用Spring框架来集成RabbitMQ。以下是SpringMVC集成MQ的基本步骤: **1. 添加依赖** 在项目的`pom.xml`文件中添加RabbitMQ的依赖。 ```xml <groupId>com.rabbitmq</groupId> ...
Cloud Foundry 是一个开源的云平台即服务(PaaS)项目,它为开发者提供了部署和管理应用程序的服务环境。该平台支持多种编程语言、框架和服务,并能够在不同的云基础设施上运行,包括私有云、公有云以及混合云。 ##...