V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jjx
V2EX  ›  分享发现

实实在在的被淘宝-聚石塔给恶心到了, 无比恶心的入塔

  •  1
     
  •   jjx · 2015-09-09 22:48:08 +08:00 · 22241 次点击
    这是一个创建于 3161 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近做的两个应用 erp, wms 都有获取 taobao 交易数据的需求. wms 按淘宝的要求, 分成 wms 和订单平台(oms )两个应用, wms 是我们的传统应用, oms 是从 taobao 上抓取交易数据.

    http://open.taobao.com/doc/detail.htm?id=101896&spm=a219a.7386781.0.0.iGBSwH 的说明和其中的架构图

    架构

    我们不难发现,只要 oms 部署在聚石塔内,入所谓的护城河, 遵循它的约定(从塔内调用), wms 或是 erp, crm 之类的通过 http 访问 oms, 并不在外部保存所谓 r2/w2 数据就行. wms/erp/crm 是没有必要接受 taobao 聚石塔的强制入塔之类要求的.

    但是, 问题就在这里, 现在反复沟通得到的居然是要应用全部入塔, 入护城河, 包括 wms/erp 这样的传统行业应用. 我一度怀疑是沟通的问题, 你 oms 要求一定在塔内已经是垄断行为, 你还要求人家的 erp/wms/crm 也一定要部署在你的塔内, 接受你强制的端口规则(聚石塔的 vps 默认只开放少数几个端口(80,22,30001 以上的 3.4 个端口), 强制的云盾之类的安全( 我遇到过从外部发起连续 100 多个正常的 http 请求就被阻断, 沟通了近一星期才解决的问题), 没有 ssd, 没有 pgsql rds (相比阿里云), 明明 vps 资源可以用本地数据库, 却还要另外再买你们的 rds.

    最最恶心, 还要求 erp/wms/crm 这样的应用一定要用 rds, 而且只有 mysql/sql server 的 rds 可提供, 我们的应用是 postgresql, 并为 postgresql 优化, 傻了, 要是别人用 oracle 的呢, 你让人怎么切换, db 可不是说换就能换的,这可是经验积累的选择.

    说实在的, 到现在我都在怀疑是沟通问题, 获取订单, 用 rds, 在聚石塔调用都可以理解, 但你要让别人跑的多年的行业软件接受你所谓的改造, 并部署在你的塔内, 无法用常理可以理解. 也无法用你本来的规则来解释. 或许, 这本来就是人家借垄断地位想搞什么就搞什么, 你有什么办法. 我只想说, 如果做这种决策的 taobao 高层在我面前, 我真想当面吐它一口唾沫.

    第 1 条附言  ·  2015-09-10 09:11:10 +08:00

    大家参考一下, 没折了

    关键词 入塔
    由 我提问 最后修改时间 2015/09/10 08:54

    抱歉,可能标签和分类不正确 
    
    当前, 我们正在进行 wms+oms 的申请, 其中有个问题困扰我们, 就是 wms 是否需要入塔, 我反复阅读的聚石塔的规则 
    
    http://open.taobao.com/doc/detail.htm?id=101896&spm=a219a.7386781.0.0.iGBSwH 
    
    从架构图上 http://img.alicdn.com/top/i1/T1Yax9FyBcXXb1upjX.jpg 
    
    得出的结论是: wms, erp, crm 可以不入塔, 只要遵循规则, 通过 http 得到聚石塔内部的 oms 数据,并且在塔外不进行 r2/r1 数据存储就行. 更谈不上将 wms/erp/crm 的 db 改为 rds 这一说, 因为从常理上这类系统都会经过多年沉淀, 通常也没有简单的方式可以改造为 rds , 比方用 oracle 的怎么办, 用 postgresql 的怎么办? 
    
    但现在, 聚石塔对 wms 是否要入塔始终是一个模棱两可的态度,导致我们下一步工作没有办法具体展开, 我们今后还会审核 erp 接入, 同样也需要面对这个问题, erp 业务要在聚石塔内部展开, 无法想象. 
    
    因此, 希望对 wms 是否需要将应用部署在塔内, 把 wms 数据库切换成 rds (包括 erp ) . 希望得到一个明确的结论, 方便我们进一步跟进这个工作, 谢谢. 我的理解应该是 oms 系统要在塔内, api 从 oms 中调用, oms 得到从 taobao 得到的数据放在 rds 上就行.
    

    由 聚石塔 处理 已回答 回答时间 2015/09/09 21:23

    现在应用都必须入塔,而 RDS 只提供 mysql 和 sqlserver 两种类型的数据库
    

    补充提问

    那你们怎么解释聚石塔的规则, http://open.taobao.com/doc/detail.htm?id=101896&spm=a219a.7386781.0.0.iGBSwH, 不能因为你们的垄断地位而随意更改规则, 这不合理 
    另外, 我想问, 如果用友 u9, nc 需要用 taobao 交易数据, u9, nc 也一定要在聚石塔内吗, oracle erp 需要用 taobao 交易数据, oracle erp 都要在聚石塔内吗? oracle 的数据库怎么切换成 rds, 这样的决定无法理解.
    

    补充回答
    由聚石塔处理 已回答 / 等待反馈

    事实情况是塔外不能调用 api
    

    补充提问

    问题是我们的 wms 并不调用 api, 完全是俺你们的规则走 
    
    oms 抓取 taobao 交易, 存放在 rds, 入塔, 调用 taobao api 的都会限制在 oms 上, 都在塔内 
    
    oms 按你们的入塔规范走 
    
    wms 通过 http 访问 oms, 对其中信息进行确认,执行,发货等操作, 这些都是通过 http 调用 oms 进行, 也就是你们规则要求的, wms 也严格保证不保存 r2/w2 数据. 
    
    补充: 
    
    你们不能把消费 taobao 交易数据和调用 taobao api 混为一谈, 变成凡是消费 taobao 交易数据的应用都必须入塔, 结果变成就是所有应用都要入塔这样不合理的要求 
    
    从你们的 http://open.taobao.com/doc/detail.htm?id=101896&spm=a219a.7386781.0.0.iGBSwH 来看, 是可以通过 http 访问 oms, 得到存储在 rds 中的交易数据, 这是外部应用消费 taobao 数据,不是调用 api. 调用 api,获得交易数据并存储在 rds , 不能由外部的 erp/wms/crm 来做, 也不能存储在外部 db (r2/w2 数据), 只能由塔内的 oms 来做. 这才是你们真真的原意
    

    补充回答

    由聚石塔处理 已回答 / 等待反馈

    那你看着文档来吧
    
    20 条回复    2015-10-22 08:39:54 +08:00
    windfarer
        1
    windfarer  
       2015-09-09 22:55:07 +08:00
    虽然看不懂,但是觉得设定好中二
    jjx
        2
    jjx  
    OP
       2015-09-09 23:02:08 +08:00
    最近给这个郁闷的不行, 总不能仅仅为了仅仅获得一小部分 taobao 交易中的发货地址之类的信息的需求,把用的好好的 postgresql 给换了, 问题是 postgresql 用熟了, 真的倒贴我钱我都不想用 mysql 了的

    想什么折好的, 用 mysql rds 糊弄一个 wms 充数?
    squid157
        3
    squid157  
       2015-09-09 23:11:34 +08:00 via iPhone   ❤️ 1
    我觉得可能是沟通问题吧

    前两天去熟人的公司参观(我是大学狗……),他们那个 ERP 有一部分跟淘宝订单结合非常紧密,而且估测请求量也很大,另一方面是开发了十几年后来才接入淘宝的,要求内网访问,估计是不可能部署到淘宝的服务器的。
    squid157
        4
    squid157  
       2015-09-09 23:14:40 +08:00 via iPhone
    顺便 他那个 rds 呢 不知道什么情况,但听说阿里云之类的,本地 IO 比较惨,所以单独买 rds 性能好
    jjx
        5
    jjx  
    OP
       2015-09-09 23:15:09 +08:00
    @squid157

    有可能是沟通问题, 但也可能是过去申请下来的原因, 我们老版本的 erp 是 c/s, 也有一个老早申请下来的 app key, 但因为使用数只有 50, 完全不够用.
    jjx
        6
    jjx  
    OP
       2015-09-09 23:18:30 +08:00
    @squid157

    我现在在阿里云的机器除了备份机外, 都用的是 ssd, 如果要回退到聚石塔的云磁盘,还真的是回不去了
    LMkillme
        7
    LMkillme  
       2015-09-09 23:19:01 +08:00
    左耳朵耗子陈皓还在淘宝的时候,貌似就是负责聚石塔。
    squid157
        8
    squid157  
       2015-09-09 23:24:46 +08:00 via iPhone
    @jjx 反正是他们那个摊子,游戏规则就是他们定,国内这么乱,才没人管这个
    jjx
        9
    jjx  
    OP
       2015-09-09 23:41:21 +08:00
    @squid157

    从他们工作人员的回复中, 我似乎觉得是他们自己都不懂自己的规则, 把

    * 只能从塔内调用 api . 他们定的规则, 应该理解为 当调用 taobao.user.buyer.get 这样的 api 是,运行调用的服务器应该在聚石塔内, 这即所谓的 oms (订单平台)的任务
    * 消费 taobao 交易数据

    按他们的自己定的规则, 可以通过 http 访问 oms 来得到 oms 调用 api 然后存放在 rds 中的数据, 除了不能在外部保存 r2/w2 数据外

    现在他们的理解是, 你消费的 taobao 交易数据, 就必须入塔, 结果, 变成所有的应用都要入塔了
    sonicwu
        10
    sonicwu  
       2015-09-10 00:05:55 +08:00   ❤️ 1
    这事情去年就搞过一次,"TOP" API 只允许塔内调用;部分 API 收费,让你从 RDS 获取数据。

    办法是:你可以在“塔内”搭一个 "proxy",代理掉 taobao sdk 发出的请求

    1. 把请求 forward 到 TOP
    2. 可以从 RDS 拿的数据你拿完封装成和 TOP 一样的 response

    2 是为了省钱,不差钱只做 1 就够了。你的应用原来放哪还放哪,塔里就跑这个 "proxy"
    jjx
        11
    jjx  
    OP
       2015-09-10 00:13:39 +08:00
    @sonicwu

    这个其实就是 它规则允许的, 即外部应用可以通过 http 访问 oms 得到它存储在 rds 的数据

    这部分其实不是问题, 其实我们老的 app key 也是这么在做. 我们现在遇到的问题是

    他们要求 wms + oms 双应用申请, wms 也要强制入塔改造.

    这个要求相当于是

    * 用友 u9 如果要用 taobao 交易, 要把用友 u9 也部署到聚石塔服务器并接受它要求的改造
    * oralce erp 如果要用 taobao 交易, 要把 oracle erp 也部署到聚石塔服务器并接受它要求的改造

    这显然是不合常理, 所以我现在还是在怀疑工作人员的业务能力问题
    jjx
        12
    jjx  
    OP
       2015-09-10 09:05:05 +08:00
    y 的, 最后得到的回复是

    由 xxx 处理 已回答 / 等待反馈

    那你看着文档来吧


    完全是爱怎样就怎样的态度, 真心替 taobao 技术蒙羞
    jjx
        13
    jjx  
    OP
       2015-09-10 09:10:13 +08:00
    大家参考一下, 没折了


    关键词 入塔
    由 我提问 最后修改时间 2015/09/10 08:54

    ```
    抱歉,可能标签和分类不正确

    当前, 我们正在进行 wms+oms 的申请, 其中有个问题困扰我们, 就是 wms 是否需要入塔, 我反复阅读的聚石塔的规则

    http://open.taobao.com/doc/detail.htm?id=101896&spm=a219a.7386781.0.0.iGBSwH

    从架构图上 http://img.alicdn.com/top/i1/T1Yax9FyBcXXb1upjX.jpg

    得出的结论是: wms, erp, crm 可以不入塔, 只要遵循规则, 通过 http 得到聚石塔内部的 oms 数据,并且在塔外不进行 r2/r1 数据存储就行. 更谈不上将 wms/erp/crm 的 db 改为 rds 这一说, 因为从常理上这类系统都会经过多年沉淀, 通常也没有简单的方式可以改造为 rds , 比方用 oracle 的怎么办, 用 postgresql 的怎么办?

    但现在, 聚石塔对 wms 是否要入塔始终是一个模棱两可的态度,导致我们下一步工作没有办法具体展开, 我们今后还会审核 erp 接入, 同样也需要面对这个问题, erp 业务要在聚石塔内部展开, 无法想象.

    因此, 希望对 wms 是否需要将应用部署在塔内, 把 wms 数据库切换成 rds (包括 erp ) . 希望得到一个明确的结论, 方便我们进一步跟进这个工作, 谢谢. 我的理解应该是 oms 系统要在塔内, api 从 oms 中调用, oms 得到从 taobao 得到的数据放在 rds 上就行.

    ```

    由 聚石塔 处理 已回答 回答时间 2015/09/09 21:23

    ```

    现在应用都必须入塔,而 RDS 只提供 mysql 和 sqlserver 两种类型的数据库

    ```
    补充提问

    ```
    那你们怎么解释聚石塔的规则, http://open.taobao.com/doc/detail.htm?id=101896&spm=a219a.7386781.0.0.iGBSwH, 不能因为你们的垄断地位而随意更改规则, 这不合理
    另外, 我想问, 如果用友 u9, nc 需要用 taobao 交易数据, u9, nc 也一定要在聚石塔内吗, oracle erp 需要用 taobao 交易数据, oracle erp 都要在聚石塔内吗? oracle 的数据库怎么切换成 rds, 这样的决定无法理解.
    ```

    补充回答
    由聚石塔处理 已回答 / 等待反馈

    ```
    事实情况是塔外不能调用 api
    ```

    补充提问

    ```

    问题是我们的 wms 并不调用 api, 完全是俺你们的规则走

    oms 抓取 taobao 交易, 存放在 rds, 入塔, 调用 taobao api 的都会限制在 oms 上, 都在塔内

    oms 按你们的入塔规范走

    wms 通过 http 访问 oms, 对其中信息进行确认,执行,发货等操作, 这些都是通过 http 调用 oms 进行, 也就是你们规则要求的, wms 也严格保证不保存 r2/w2 数据.

    补充:

    你们不能把消费 taobao 交易数据和调用 taobao api 混为一谈, 变成凡是消费 taobao 交易数据的应用都必须入塔, 结果变成就是所有应用都要入塔这样不合理的要求

    从你们的 http://open.taobao.com/doc/detail.htm?id=101896&spm=a219a.7386781.0.0.iGBSwH 来看, 是可以通过 http 访问 oms, 得到存储在 rds 中的交易数据, 这是外部应用消费 taobao 数据,不是调用 api. 调用 api,获得交易数据并存储在 rds , 不能由外部的 erp/wms/crm 来做, 也不能存储在外部 db (r2/w2 数据), 只能由塔内的 oms 来做. 这才是你们真真的原意

    ```
    补充回答

    由聚石塔处理 已回答 / 等待反馈

    ```
    那你看着文档来吧
    ```
    yxssfxwzy
        14
    yxssfxwzy  
       2015-09-10 09:42:10 +08:00 via Android   ❤️ 1
    太长了,没仔细看,我们获取订单是用爬虫来做的,量比较小,即时性要求不高,直接模拟登录搞定了
    jjx
        15
    jjx  
    OP
       2015-09-10 09:54:41 +08:00
    @yxssfxwzy

    简短的话就是 我有一个 wms/erp/crm 的软件,需要消费 taobao 数据, 那么现在他们要求这个软件本身也要部署到聚石塔服务器并且入护城河(有一系列改造, 最无法接受的是要改这个软件的数据库到 rds ). 但其实阅读他们在网上的规则, 这类软件(消费 taobao 数据)其实是不需要所谓的入塔和改造的
    beneo
        16
    beneo  
       2015-09-11 06:51:30 +08:00   ❤️ 1
    少年郎,你真的太年轻。
    jjx
        17
    jjx  
    OP
       2015-09-11 08:20:15 +08:00
    @beneo

    其实已经不年轻了, 也是正是因为不年轻, 不想再把精力花费在这种无谓的事情上

    我已经放弃了, 让公司的其他项目组去做这事情了
    huobazi
        18
    huobazi  
       2015-10-21 17:08:49 +08:00
    @jjx 后面怎么发展呢?
    jjx
        19
    jjx  
    OP
       2015-10-21 21:23:06 +08:00
    @huobazi

    本来是不想搞了, 后来产品经理联系到另外一个据说负责技术的, 表示

    1. 敏感数据不出塔, 类似像收货地址, 就是你自己提供一个类似 http://塔内的地址 /api/trades/1(返回的信息有收货地址这样的敏感数据) 这样的 调用 给塔外的服务器(不用说存储, 就是看也是)不行的
    2. 如果要 postgresql rds, 向聚石塔提出申请

    所以我们又炮制了一个方案, 把 wms 调用 taobao api 的部分抽离为一个 wms 助手, 加上原来的 oms, 准备所有涉及敏感数据的显示都 http 重定向到这 wms 助手和 oms 上进行, 不过向聚石塔提交这个方案到现在又一个月过去了, 还是没有回复,行还是不行.

    如果上面方案不行的话,我们再申请 postgresql rds, 我也评估了阿里云的 postgresql rds, 发现除了不能自行装扩展,比方说全文检索外, 现在安全模式也不太符合预期(当前必须通过 rds 的语句执行拦截)肯定影响性能, 再说, 当前 pgsql rds 在阿里云上也只有北京地区有, 所谓的申请, 能不能同意也是个问题

    其实阿里在杭州技术圈中评价本来就不高, 以前不打交道, 也无所谓, 现在, 我已经完全是阿里黑了
    huobazi
        20
    huobazi  
       2015-10-22 08:39:54 +08:00
    @jjx 就是说传统的 WMS TMS 等都没法接了,都要改造到塔内,阿里这就是只想赚点小钱的样子啊
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   767 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 21:59 · PVG 05:59 · LAX 14:59 · JFK 17:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.