这篇博客主要探讨了 EF 在分库、分表及多租户架构上实施的可能性。分库、分表的目的是为了提高数据库的查询性能,在这个过程中,我们可以考虑范围、Hash和配置三种路由策略,它们各自有自己的优缺点,需要使用者结合业务场景去衡量。虽然分库、分表在面对百万级别以上的数据时,不失为一种提高性能的方案,可世间万物都是双刃剑,它同样带来了一系列新的问题,譬如跨库写带来的分布式事务问题,跨库读带来的Join、Count()、排序、分页等问题,数据迁移问题等等,而如果希望通过Hash(Id)来进行拆分,还需要解决全局Id唯一的问题。所以说,这是一个没有标准答案的问题,需要使用者自己去进行取舍。多租户架构、读写分离均可以看作是特殊的分库场景,EF Core 中新增的HasQueryFilter()方法则帮助我们解决了单数据库的多租户架构问题。
产品经理这种创意类岗位并不是一个标准化的职业,由于产品经理的“成功”往往会受到公司与以往环境的巨大影响,不同公司里对产品经理的专业能力要求,工作内容分配与企业需求都可能是不一样的,所以只用产出来衡量产品经理的能力并不是十分合理。此外,产品经理这种岗位也很难用一些外部的证书或者资质(比如 PMP,NPDP,项目管理师等等)来衡量专业度好坏,更别提获取产品经理相关知识的渠道五花八门(公众号,知乎,即刻,播客,微博等等),也很难通过某一些产品经理是否有过相关 KOL 或者知识理论的了解来衡量。