作者:AlbertWen
添加时间:2017-10-26 14:21:09
修改时间:2025-10-04 21:44:53
分类:
18.系统设计/UML建模
编辑
如题:如何设计业务模块返回结果的结构?
一个业务函数/方法执行后,对外输出数据的结构通常有以下几种:
1、返回数字,如 成功时返回 0,失败时返回 -1,有的还会用一个全局变量输出错误信息:
<?php
class UserLogic extends \Think\Model {
protected $error;
/**
* 更改用户名称
*
* @param int $userId 用户ID
* @param string $userName 用户名
* @return int -1: 操作失败, 0: 操作成功
*/
public function updateUserName($userId = 0, $userName = '') {
if (empty($userId)) {
$this->error = '用户ID不能为空';
return -1;
}
if (empty($userName)) {
$this->error = '用户名不能为空';
return -1;
}
$where = array(
'userId' => $userId
);
$data = array(
'userName' => $userName
);
$res = $this->where($where)->save($data);
if ($res !== false) {
return 0;
}
return -1;
}
}
作者:AlbertWen
添加时间:2015-03-09 19:29:02
修改时间:2025-10-02 04:43:06
分类:
18.系统设计/UML建模
编辑
图片服务器被独立出来之后,会面临两个选择,主流的方案是前端采用Nginx,中间是PHP或者自己开发的模块,后端是物理存储;比较特别一些的,比如Facebook,他们把图片的请求处理和存储合并成一体,叫做haystack,这样做的好处是,haystack只会处理与图片相关的请求,剥离了普通http服务器繁杂的功能,更加轻量高效,同时也使部署和运维难度降低。
作者:AlbertWen
添加时间:2015-01-29 21:39:53
修改时间:2025-10-18 23:41:30
分类:
18.系统设计/UML建模
编辑
电商的秒杀和抢购,从技术的角度来说,会对Web系统产生巨大的考验。本文带大家关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因。
作者:AlbertWen
添加时间:2015-01-18 23:32:36
修改时间:2025-10-18 10:50:21
分类:
18.系统设计/UML建模
编辑
作者:AlbertWen
添加时间:2018-06-09 15:33:53
修改时间:2025-10-13 05:18:32
分类:
18.系统设计/UML建模
编辑
作者:AlbertWen
添加时间:2019-03-03 00:33:27
修改时间:2025-10-16 15:36:04
分类:
18.系统设计/UML建模
编辑
作者:AlbertWen
添加时间:2014-08-18 02:49:04
修改时间:2025-10-19 22:16:16
分类:
18.系统设计/UML建模
编辑
分析业务模型-类图(Class Diagram)
摘要:类图(Class Diagram)可能是用得最多的一种UML图。类图的基本语法并不复杂,你可能最多学习两三天就可以掌握,然而要真正做到活用类图则可能需要几年的功力。类图是锻炼面向对象分析(OOA:Object-Oriented Analysis)和面向对象设计(OOD:Object-Oriented Design)思想的重要的工具,是业务结构建模的重要工具。本章将会有大量的实战练习,你的OOA思想将会接受极大的考验和提升。
作者:AlbertWen
添加时间:2012-05-12 11:11:49
修改时间:2025-10-12 12:56:03
分类:
18.系统设计/UML建模
编辑
要实现无限级分类,递归一般是第一个也是最容易想到的,但是递归一般被认为占用资源的方法,所以很多系统是不考虑使用递归的
本文还是通过数据库的设计,用一句sql语句实现
数据库字段大概如下:
字段 |
说明 |
id |
编号 |
parend_id |
父分类编号 |
class_name |
分类名 |
path |
分类路径,以 id 为节点,组成类似 ,1,2,3,4, 这样的字符串 |
作者:AlbertWen
添加时间:2014-03-02 11:14:58
修改时间:2025-10-13 05:49:35
分类:
18.系统设计/UML建模
编辑
Python定时按日期备份MySQL数据并压缩
0 23 * * * python /var/www/html/crontab_python/back_db.py >/dev/null 2>&1
作者:AlbertWen
添加时间:2013-12-20 10:08:48
修改时间:2025-10-09 18:50:23
分类:
18.系统设计/UML建模
编辑
对于一些很特殊的接口,怎么特殊,哪些算特殊,我也不知道,总而言之,就是感觉http请求有可能被劫取,传递参数有可能被窜改等情况,还是举个例子来说吧:
有个直接转账接口,页面上 我输入的是5元,表示我要给对方某某转账5元,结果在http传递过程中,被人劫取并窜改成了 10000元,而且入账对象改成了“黑客”的账号,那不是亏大发了,思考了一下,应该有2种方案解决这个问题,