网站介绍


哪煮米是一个我自己独自操刀的域名比价平台,会显示不同域名后缀,不同注册商的注册价格,支持横向对比和纵向对比。并且支持多种条件筛选,非常人性化。
首页:https://www.nazhumi.com

为什么做这个网站


  1. 自己有这方面的需求,也在Q群聊天里面知道还有一些朋友也有类似的需求。
  2. 国外已经有 domcomp、tld-list 网站,但是对于中国用户来说使用体验不太好,支持的域名商也不全面,尤其是不支持国内的域名注册商。
  3. 国内也有一些类似的网站,问题也主要在域名注册商太少。这样就导致一个很严重的问题:价格谈不上实惠。
  4. 想系统总结一下自己的技术,做一些创造性的工作搬砖。

开发这个网站有哪些坑


  1. 这个网站我尝试了全新的JAVA技术栈(Springboot全家桶),确实方便,但坑也变得很多。
  2. 首先说下方便的地方
    1. Spring Data JPA + Hibernate 的组合,确实十分方便,特别是定义完DAO接口之后马上就可以使用(动态代理的一些机制),既解决了原来 Hibernate 各种 前置后置操作,也不用再取出后担心再转类型导致不安全的问题。在 ORM 领域可以说是开辟了一个新天地了。和直接使用 MongoDB 的体验相差无几,还支持复杂的一些关联操作。
    2. Springboot本身配置少,省去了配置找百度的很多时间,也大大提高了可扩展性。比如要加入日志、redis等就变得非常方便,和Maven整合之后,也不用关注各个组件的版本号。
    3. 启动更加方便,不用再折腾Tomcat,只要Jar包就可以启动。
  3. 再说下比较坑爹的地方
    1. SpringBoot 默认的模板引擎 Thymeleaf 极其不好用。
      1. 首先比如文档必须是html,但是又要求各种模板变量必须在 双引号 以内,不能直接在两标签中调用变量,并且不提供转义符号。
      2. 组件也不太好用,组件必须包在一个标签中,但是又不提供像 vue 或者 小程序 里面的 block/template 等无意义标签。
      3. 不支持 的使用方法,必须还是JSP的老一套。总之,如果你用过 vue 或者 小程序做前端开发的话,再转过来用 Thymeleaf ,就会得到一种酸爽的体验。截取了一小段判断逻辑供大家体验。

image.png | left | 771x320

2. jar包直接启动仍然不方便,在实际生产环境中,需要根域名跳转到www,Springboot没法提供好的方案,无奈只能用 nginx反代一下。当然这个也是微服务的趋势。另外,如果要增加一些 图标资源 ,改动一下 html,也必须重新打包,有点麻烦。
3. SpringData JPA 中没有提供 像 Hibernate 查询器的一些方便的面向对象的sql生成机制,复杂动态查询的时候使用起来比较繁琐。

还有哪些遗憾


  1. 没有做输入一个域名前缀搜索是否可以注册的功能,专注于注册商比价。原因主要是因为没有找到合适的接口。不过,其实很多域名注册商本身也支持数百个后缀,查询域名是否可注册并不麻烦。

未来给自己留了哪些坑


  1. 现在访问量较少,如果用户增多,可能会考虑用 Redis 暂存 优化资源占用量。如果用户暴增则可能还需要考虑负载均衡(不可能的)。
  2. 还有便宜的许多域名注册商没有收录,主要是各国本地的注册商,对于该国的后缀注册一般会比较便宜。(如 .cn 国内注册只需二十元,但是外国注册商都是十美元起),这个精力有限,日后有时候再慢慢添加。
  3. 很有可能不赚钱,必须自己支付相关费用。