Hi Dev Team

After the experiences of removing endpoint_inventory, I found out this
strategy is successful.
Especially, we totally get rid of register, so I want to do more.

*SkyWalking 8.0.0*
First, it is already unexpected for me, we have to move to 8.0.0 so
quickly, but after the discussion with +高洪涛@skywalking
<[email protected]>, and thinking about this for several days, I think
we have to.

The key chances are following
1. Remove service, service instance, and network address register. The old
register protocols are totally going to be removed.
2. The agent doesn't need to do register anymore. Service name and Service
Instance name are generated by the agent itself, but the extra information,
such as IP, hostname, language, should report to backend separately.
3. Service Traffic should be added just like the endpoint traffic but keep
the time bucket as we need accurate service name in the given duration
4. Service Instance Traffic should be added too, with external information,
such as language, hostname.
5. Trace context propagation context should be changed to accept string in
service instance name, endpoint name and network address. This could ease
the agent logic, but also, requires changes in all language agent and
plugin test tool,
6. Trace report protocol requires to change too, in order to adopt the
string.
7. e2e tests have to ignore PHP and LUA at first, and remove the 6.x
compatibility test(doesn't support anymore).

The benefits we will get are
1. Don't worry about the inventory(s) that has been deleted randomly by end
users. (We received a lot of issue reports about this)
2. The upgrade could be easier erasing the whole storage and reboot the new
one. (Users don't feel comfortable about upgrade)
3. No hot-reboot case in the agent side
4. No cache of network address register information in the agent.
5. No service and service instance cache in the OAP
6. No register lock in the OAP
7. No file buffer mechanism in the OAP too, same as no register happens.

In my mind, I think this totally break upgrade is super meaningful and will
be good change. Even we break many things, they are easy to follow.
[email protected] <[email protected]> I think by following this, we need
to change the collaboration header to `sw8` :) As no 7.1.0 release will
happen.

Sheng Wu 吴晟
Twitter, wusheng1108

Reply via email to