文档章节

PhalGo-介绍

喵了_个咪
 喵了_个咪
发布于 2016/05/23 10:12
字数 769
阅读 661
收藏 14
点赞 2
评论 1

#PhalGo-介绍

phalgo是一个Go语言的一体化开发框架,主要用于API开发应为使用ECHO框架作为http服务web程序一样可以使用,牛顿曾经说过"如果我比别人看得远,那是因为我站在巨人的肩膀上",既然Golang有那么多优秀的组件为什么还要重复造轮子呢?所以就有了一个把一些优秀组件整合起来降低开发成本的想法,整合了比较好的组件比如echo,gorm,viper等等

##PhalGo的目的

PhalGo不是新技术,也不是新的模式,而是继续将前人,大神和顶级大师写的非常优秀的组件进行整合进行分享,并且进行封装来更易于开发人员来进行使用,最终达到建立规范降低开发成本的目的,这是PhalGo被创造出来核心的目的。

##PhalGo名字的由来

PhalGo是对PhalApi和PhalCon的致敬,吸取了一些好的思想,应为是使用golnag编写所以命名为PhalGo

##安装

多谢各位同学的反馈PhalGo安装已经推荐使用glide进行安装

glide工具的安装也很简单可以参考:https://github.com/Masterminds/glide

我们只需要在我们的项目目录建立glide.yaml文件加以下内容然后执行glide install便会自动开始安装

package: phalgo-sample     //你的项目名称
import:
- package: github.com/wenzhenxi/phalgo

PhalGo的升级也很简单,只需要在项目目录执行:

glide up

因为有部分组件依赖golang.org国内网络可能会有问题,可以直接clone官方示例项目把项目phalgo-sample中的vendor复制到你的项目目录:

phalgo-sample:https://github.com/wenzhenxi/phalgo-sample

##Holle,world!

创建文件 server.go

package main

import (
    "github.com/wenzhenxi/phalgo"
    "github.com/labstack/echo"
)

func main() {

    //初始化ECHO路由
    phalgo.NewEcho()
    // Routes路由
    phalgo.Echo.Get("/", func(c echo.Context) error {
        Response := phalgo.Response{Context:c}
        return Response.RetSuccess("hello,world!")
    })
    //开启服务
    phalgo.RunFasthttp(":1333")
}

运行:

go run server.go

请求localhost:1333:

##依赖

//配置文件读取
go get github.com/spf13/viper

//辅助使用,参数过滤,curl等
go get github.com/astaxie/beego

//主要路由
go get github.com/labstack/echo

//主要数据操作
go get github.com/jinzhu/gorm

//log记录
go get github.com/Sirupsen/logrus

//进程级别缓存
go get github.com/coocood/freecache

//高速http
go get github.com/valyala/fasthttp

//redis依赖
go get github.com/garyburd/redigo

//注意会使用到如下依赖(国内可能需要翻墙)
golang.org/x/net/context
golang.org/x/sys/unix
golang.org/x/crypto/md4

##联系方式

个人主页:w-blog.cn

喵了个咪邮箱:wenzhenxi@vip.qq.com

官方QQ群:149043947

© 著作权归作者所有

共有 人打赏支持
喵了_个咪
粉丝 235
博文 133
码字总数 173973
作品 4
杨浦
技术主管
加载中

评论(1)

encro
encro
Holle,world!
PhalGo-Viper获取配置

PhalGo-Viper获取配置 viper项目地址:https://github.com/spf13/viper 什么是viper viper是国外大神spf13编写的开源配置解决方案,viper拥有一下功能以及特性如下: 设置默认值 从JSON,toml ...

喵了_个咪 ⋅ 2016/06/01 ⋅ 0

喵了个咪/phalgo

PhalGo V 0.0.3 ##前言 PhalGo是一个Go语言开发的一体化开发框架,主要用于API开发,因为使用ECHO框架作为http服务,MVC模式一样可以使用,牛顿曾经说过"如果我比别人看得远,那是因为我站在巨人的...

喵了个咪 ⋅ 2016/05/24 ⋅ 0

PhalGo-Echo路由

PhalGo-Echo路由 Echo官网地址:https://labstack.com/echo Echo是PhalGo最核心的组件,负责了整体的请求路由返回等功能,并且Echo支持HTTP2协议以及HTTPS协议 为什么选择Echo 在初期笔者考虑过...

喵了_个咪 ⋅ 2016/05/24 ⋅ 0

PhalGo-介绍 PhalGo-介绍

angularjs: Hacking with Angular: 玩转ngOptions指令 PhalGo-介绍 PhalGo-介绍 Python 开发者在迁移到 Go(lang) 时需要知道哪些事? Go vs Erlang - 转 Go vs Erlang 并发 抢占式调度 垃圾回...

d_watson ⋅ 2016/05/25 ⋅ 0

PhalGo-初识PhalGO

PhalGo-初识PhalGO PhalGo是一个API开发框架,因为使用了Echo框架同样也能用于MVC的开发,MVC具体可以参考Echo官方文档,对于PhalGo来说可以使用推荐的结构来设计的API接口,也可以按照自己的需求...

喵了_个咪 ⋅ 2016/05/25 ⋅ 0

PhalGo-Respones

PhalGo-Respones 在处理请求 Api 请求中 , 除了对 Request 之外最重要的就是 Response 了 , PhalGo 支持两种格式的参数返回一种是 Josn 一种是 XML , 在 PhalGo 中默认使用JSON进行返回 , 可...

喵了_个咪 ⋅ 2016/07/12 ⋅ 0

Go语言API开发框架--PhalGo

前言 PhalGo是一个Go语言开发的一体化开发框架,主要用于API开发,因为使用ECHO框架作为http服务,MVC模式一样可以使用,牛顿曾经说过"如果我比别人看得远,那是因为我站在巨人的肩膀上",既然Gol...

喵了_个咪 ⋅ 2016/06/03 ⋅ 0

PhalGo-参数验证过滤

PhalGo-参数验证过滤 phalGo 的参数过滤使用 beego 提供的独立模块 validation 进行封装改造 , 从而达到可以和 request 一同使用的效果 , 通过统一的报错机制对不匹配的参数进行处理. 连贯操...

喵了_个咪 ⋅ 2016/07/08 ⋅ 0

[喵咪Golang(2)]安装和Helloworld

哈喽大家好啊!今天我们紧接着来学习关于Go语言的安装和使用Go打印出helloworld,本节内容将会讲解关于Go语言在Liunx下怎么安装,环境变量怎么配置分别起到了什么作用,然后我们把go运行起来并且...

喵了_个咪 ⋅ 2016/05/23 ⋅ 0

PhalGo-ADM思想

PhalGo-ADM思想 关于ADM思想主要是指在API开发中使用API,Domain和Model三层结构,PhalGo从PhalApi中学习并且推崇这种设计模式,这种模式的好处在于分工明确,业务复用,数据复用可以减少复杂业务...

喵了_个咪 ⋅ 2016/05/26 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

中标麒麟(龙芯版)7.0优盘安装

########################################## 制作U盘安装盘: 1.准备U盘: PMON环境下U盘必须格式化成ext3; 昆仑固件环境下可以格式化成ext3,ext4 2.把整个镜像 xxx.iso 复制到U盘下面 3....

gugudu ⋅ 18分钟前 ⋅ 0

老司机写的大数据建模五步走

本文将尝试来梳理一下数据建模的步骤,以及每一步需要做的工作。 01 第一步:选择模型或自定义模式 这是建模的第一步,我们需要基于业务问题,来决定可以选择哪些可用的模型。 比如,如果要预...

gulf ⋅ 27分钟前 ⋅ 0

PacificA 一致性协议解读

PacificA 的 paper 在 08 年左右发出来的,比 Raft 早了 6,7 年。 在 PacificA 论文中,他们强调该算法使用范围是 LAN (Local Area Network),讲白了就是对跨机房不友好。 不管是 ZAB,Raf...

黑客画家 ⋅ 29分钟前 ⋅ 0

盘符图标个性化

设置自己的专属盘符图标 准备ico格式的图片文件一个,在根目录下创建autorun.inf文件 文件内容 [Autorun]icon=logo.ico 重新启动或者插拔U盘即可看到结果...

阿豪boy ⋅ 30分钟前 ⋅ 0

Windows下QQ聊天记录中图片的默认存放位置

Windows下QQ聊天记录中图片的默认存放位置在设置中是没有说明的。 实测位置在:D:\Documents\Tencent Files\974101467\Image 其中: “974101467”为对应的QQ号; “C2C”为个人之间的聊天图...

临江仙卜算子 ⋅ 36分钟前 ⋅ 0

GC 的三种基本实现方式

参考资料《代码的未来》(作者: [日] 松本行弘)。 由于并非本人原著(我只是个“搬运工“),SO 未经本人允许请尽情转载。 另外个人像说明一下这里所说的GC指泛指垃圾回收机制,而单指Jav...

xixingzhe ⋅ 37分钟前 ⋅ 0

Android双击退出

/** * 菜单、返回键响应 */ @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if(keyCode......

王先森oO ⋅ 41分钟前 ⋅ 0

idea 整合 vue 启动

刚学习Vue 搭建了一个项目 只能命令启动 Idea里面不会启动 尝试了一下修改启动的配置 如下: 1.首先你要保证你的package.json没有修改过 具体原因没有看 因为我改了这个name的值 就没办法启动...

事儿爹 ⋅ 47分钟前 ⋅ 0

redis在windows环境的后台运行方法

在后台运行,首先需要安装redis服务,命令为 redis-server.exe --service-install redis.windows.conf --loglevel verbose 启动,命令为 redis-server --service-start 停止,命令为 redis-...

程序羊 ⋅ 50分钟前 ⋅ 0

比特币现金开发者提出新的交易订单规则

本周,四位比特币现金的四位开发者和研究员:Joannes Vermorel(Lokad),AmaurySéchet(比特币ABC),Shammah Chancellor(比特币ABC)和Tomas van der Wansem(Bitcrust)共同发表了一篇关...

lpy411 ⋅ 54分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部