Мне кажется, это интересный вопрос, но без практического решения ..
Если я правильно понимаю, вы хотите сгенерировать diff из текущего DOM в новый, и вы хотите сгенерировать этот скрипт изменений (который выполняется на стороне клиента на JavaScript).
Проблема заключается в том, что для того, чтобы сервер генерировал diff, ему нужно знать, какой была предыдущая структура DOM, чтобы сравнить ее с новой (то есть с новой HTML-страницей)
Единственное, о чем я могу думать, это:
1. The client sends back the full current page or some representation of it.
2. The server stores a copy of the previous page.
Проблема с # 1 состоит в том, что вы уже отрицаете какую-либо выгоду от производительности. Отправка полной страницы обратно на сервер так же плохо или хуже, чем отправка ее с сервера клиенту. Вы можете достичь того же эффекта, запросив полное тело страницы через AJAX и заменив его, и это будет столь же эффективно и проще в реализации.
Проблема с # 2 заключается в том, что серверу нужны x копий каждой страницы, где x - количество пользователей. Это много памяти, если только вы не сохраняете ее на диск, в этом случае это запись на диск среднего размера для каждого запроса. Тогда возникает проблема выяснения того, как долго их хранить, потому что, если кто-то посещает сайт один раз, вы не захотите держать его там вечно.
Производительность в любой ситуации, скорее всего, будет хуже, чем просто получение полной страницы, и будет ухудшаться с увеличением числа пользователей.
Это не включает в себя сложность на самом деле сделать это правильно. Я думаю, что гипотетически это могло бы быть сделано, но кроме как забавного эксперимента, нет никаких практических преимуществ, которые перевесили бы стоимость такого решения, поэтому я сомневаюсь, что вы найдете его.