- 介绍">介绍
- 整个代码的框架">整个代码的框架
- 前端:前端3架马车是必须的,html+css+JS ,然后整个UI的框架我们选择bootstrap,这个框架也是非常有名的,很多网站都是用它来做UI。">前端:前端3架马车是必须的,html+css+JS ,然后整个UI的框架我们选择bootstrap,这个框架也是非常有名的,很多网站都是用它来做UI。
- 后端:后端的框架也有很多可以选择,比如Flask,Django,FastAPI,Tornado(其中FastAPI的性能比较高,类似有点像Go).然后里面最有名的就是Flask和Django 二者又有千秋,如果小站快速开发,首选flask 它是非常轻量级的。Django是企业级开发的,功能很全。后面会员群我们讲Python高级开发的时候会对这些框架进行深入介绍。这里我们选flask,因为我们这个网站算是很小的应用。">后端:后端的框架也有很多可以选择,比如Flask,Django,FastAPI,Tornado(其中FastAPI的性能比较高,类似有点像Go).然后里面最有名的就是Flask和Django 二者又有千秋,如果小站快速开发,首选flask 它是非常轻量级的。Django是企业级开发的,功能很全。后面会员群我们讲Python高级开发的时候会对这些框架进行深入介绍。这里我们选flask,因为我们这个网站算是很小的应用。
- 数据库:我这里选了2个数据库,为啥会选2个。原因是因为我们有页面之间的存储的数据临时需求,用redis这个内存数据库非常快而且很方便,而且使用起来也和简单。那为啥要用sqlite3,原因是因为我们要在页面增加一个历史查询记录的功能,如果我们的网站服务器重启了,或者程序reboot了,那么内存的数据库的数据就全部丢了。但是用sqlite3可以很好的解决这个问题,这个是持久数据库(比起mysql,mongodb,sqlite3算是很轻量的适合小白上手)。">数据库:我这里选了2个数据库,为啥会选2个。原因是因为我们有页面之间的存储的数据临时需求,用redis这个内存数据库非常快而且很方便,而且使用起来也和简单。那为啥要用sqlite3,原因是因为我们要在页面增加一个历史查询记录的功能,如果我们的网站服务器重启了,或者程序reboot了,那么内存的数据库的数据就全部丢了。但是用sqlite3可以很好的解决这个问题,这个是持久数据库(比起mysql,mongodb,sqlite3算是很轻量的适合小白上手)。
- 服务器部署:一般都是用gunicorn+nginx来配合使用的。">服务器部署:一般都是用gunicorn+nginx来配合使用的。
- 整个网站的业务逻辑图">整个网站的业务逻辑图
这个是一个全栈的项目,麻雀虽小,五脏俱全!
介绍
全程都是利用gpt4进行辅助编程搞定的。第一版其实非常快,大概30分钟就搞定了,后续就是不断的添砖加瓦,增加功能和优化UI。其实很多小白都在说要学Python,也想学Python,但是基本买了一本厚厚的书或者拿了一份资料之后就,开始啃,结果不到3周从入门到放弃,原因很简单,没有动力,也没有兴趣,一开始的激情就这样被几周消磨殆尽了!
那么学习Python最好的方式是什么,就是实战!实战!实战!
你会把新华字典全部看完,再写作文吗?学习编程也是这样的,只要大概了解一下基本的语法就可以开始动手练习!然后在实战的过程不断学习,吸取知识!其实小伙伴都想做一个全栈的项目,现在有了gpt4可以非常方便的帮你搞定,而且是一个价格非常非常便宜的24小时服务没有怨言的老师。
整个代码的框架
下面是我们整个代码的框架,是非常适合一个初学者练手的一个小项目,而且很有趣的。为了简单,容易上手,我们整个的开发都选择的兵器都是轻量级的,好上手的,因为我们本身就是开发的一个小的应用,杀鸡不需要牛刀。前端:前端3架马车是必须的,html+css+JS ,然后整个UI的框架我们选择bootstrap,这个框架也是非常有名的,很多网站都是用它来做UI。
后端:后端的框架也有很多可以选择,比如Flask,Django,FastAPI,Tornado(其中FastAPI的性能比较高,类似有点像Go).然后里面最有名的就是Flask和Django 二者又有千秋,如果小站快速开发,首选flask 它是非常轻量级的。Django是企业级开发的,功能很全。后面会员群我们讲Python高级开发的时候会对这些框架进行深入介绍。这里我们选flask,因为我们这个网站算是很小的应用。
数据库:我这里选了2个数据库,为啥会选2个。原因是因为我们有页面之间的存储的数据临时需求,用redis这个内存数据库非常快而且很方便,而且使用起来也和简单。那为啥要用sqlite3,原因是因为我们要在页面增加一个历史查询记录的功能,如果我们的网站服务器重启了,或者程序reboot了,那么内存的数据库的数据就全部丢了。但是用sqlite3可以很好的解决这个问题,这个是持久数据库(比起mysql,mongodb,sqlite3算是很轻量的适合小白上手)。
服务器部署:一般都是用gunicorn+nginx来配合使用的。
gunicorn是干嘛呢:
简单说提高网站的并发性能,它是一个Python WSGI HTTP服务器,用于服务Python Web应用。WSGI(Web Server Gateway Interface)是Python中用于链接Web服务器和Web应用的标准接口。 通常情况下,你可能会在开发环境中使用Flask或Django自带的服务器来运行你的Web应用,但在生产环境中,这样做可能会有性能问题。 Gunicorn就是为生产环境设计的,它能够处理更多的并发请求,并且能够与其他常见的Web服务器软件(例如Nginx)配合使用。 Gunicorn的工作原理是创建一个或多个工作进程(worker process),每个进程都可以独立地处理HTTP请求。通过这种方式,Gunicorn可以充分利用多核CPU的性能,处理大量的并发请求。那nginx干嘛呢:
高性能的HTTP服务器和反向代理服务器,nginx可以作为一个web服务器运行,处理HTTP请求并返回静态文件(例如HTML、CSS、JavaScript、图片等)。Nginx可以作为反向代理服务器,将客户端的请求转发到后端的应用服务器(例如Gunicorn、uWSGI等),然后将应用服务器的响应返回给客户端。在这种配置中,Nginx可以提供负载均衡和高可用性。