-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
数据库兼容 NexusPHP 讨论 #5
Comments
我认为这要看
|
目前来说倾向于3 |
为什么要兼容nphp这个设计那么差的表结构?
总而言之,nphp的设计都落后时代了,没必要搞兼容。 |
有兴趣参与前端开发吗大佬
…---原始邮件---
发件人: ***@***.***>
发送时间: 2023年2月8日(周三) 凌晨1:14
收件人: ***@***.***>;
抄送: ***@***.******@***.***>;
主题: Re: [PlexPt/rocket-pt] 数据库兼容 NexusPHP 讨论 (Issue #5)
为什么要兼容nphp这个设计那么差的表结构?
没有外键关联(虽然现在有些指导不建议使用,而是在应用层保证。
大量可以使用boolean(即tinyint (1) )的地方使用了enum(yes,no)。
torrents表设计稀烂。nfo这种原始数据而且大多数种子都没有,直接一个has_nfo的boolean列就可以了,原始内容存库或者硬盘都可以。cache_stamp这种和外置影片信息有关的变成和种子相关联。visible和banned在结果上没有太多区别,但分成两个列。 leechers和seeders这两列属于经常变动的列,导致torrents经常更新,根本没必要,直接扔缓存中就行了的。ori_descr存了东西但是根本没用。
adminpanel,modpanel,staffpanel这种可以用路由或者if判断来解决的开个表
5.allowedemails,bannedemails,torrents_state,searchbox这种一个表只有一行,而且都是和配置项有关的,扔数据库干嘛?直接改config就好了,还减少数据库请求开销。(searchbox这个表设计是我最不能理解的,本质是为了一个站点有多套搜索cat的方式,但实际大家定好了就不会再改)
suggest这种推荐表,regimages这种临时表完全可以用redis改造,不需要扔数据库。
poll表一堆options,谁设计投票这么设计?
downloadspeed这种和注册选项有关的数据表根本没必要,没人关注这些信息,也可以有更好的解决方法。
faq这种处理i18n的表也可以有更好的解决方法。
总而言之,nphp的设计都落后时代了,没必要搞兼容。
unit3d也是另开一个迁移脚本的仓库。
而且就国内的开源环境,这项迁移兼容完全可以作为付费支持项。
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
说得很好,有部分是我之前也没有考虑到的 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The text was updated successfully, but these errors were encountered: