Ошибка подключения к базе данных Google Cloud SQL в спящем java

1

Я использую Google Cloud SQL с использованием машинного типа db-f1-micro для проекта, развернутого в Google App Engine в стандартной среде (JAVA). Иногда при подключении к базе данных я получил ошибку ниже. Этот сценарий возникает при одновременной открытии одной и той же страницы на нескольких вкладках (тестирование нагрузки/производительности).

Исходный код, используемый в проекте с https://github.com/GoogleCloudPlatform/appengine-cloudsql-native-mysql-hibernate-jpa-demo-java

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Native Method)

Показатели из журнала движка приложений для ошибок и использования mysql. Вы можете легко увидеть, что использование активного подключения mysql ниже 100%.

Изображение 174551

Изображение 174551

Пожалуйста, предложите, что я делаю неправильно?

Теги:
hibernate
google-app-engine
google-cloud-sql

2 ответа

0

Похоже, этот поток старый, но у нас есть проблема в нашей тестовой среде. Это происходит часто и неоднократно после того, как наша тестовая система GAE некоторое время не используется. В первый раз, когда кто-то пытается получить доступ к приложению, мы получаем один или два из них.

Я предполагаю, что это как-то связано с расширением GAE экземпляра сервера. Хотя я не уверен, почему это происходит с БД. Я не думаю, что у нас есть какой-либо пул соединений (в частности, потому что GAE может сделать наше приложение бездействующим).

И поскольку приложение только запускается, мы не можем превышать какие-либо ограничения на подключение.

0

На странице https://cloud.google.com/appengine/docs/standard/java/cloud-sql/pricing-access-limits

"У каждого экземпляра App Engine не может быть более 12 одновременных подключений к экземпляру Google Cloud SQL".

Сколько запросов отправляется в App Engine и сколько соединений открывает экземпляр приложения для каждого из этих запросов?

  • 0
    Ваша проблема решена?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню