본문 바로가기

모바일앱 프로젝트33

Retrofit 라이브러리에서 timeout 세팅하기 진행 중인 프로젝트에서 문제가 있는 코드가 있었다. 내 기록용 포스팅이기 때문에 간단한 설명을 적자면, 안드로이드 -> 서버로 이미지 전송을 하고, 이미지 처리를 하는 과정에서 딥러닝 모델로 처리를 하는데, 이미지 처리 시간이 길었다. 그래서 이미지가 처리되고 안드로이드로 response를 보냈을 때, 이미 안드로이드 client 측에서는 connection error로 인식을 하는 오류가 있었다. 그래서 retrofit 으로 timeout 조건을 추가해주려고 한다. 이 부분은 1) 이미지 처리가 완료되기 전 해당 계정으로 이미지를 또 보내면, 현재 구현 상에서 기존의 데이터가 제대로 삭제되지 않는 문제를 해결하기 위해서도 필요하고, 2) 이미지 처리가 완료되기 전에 DB 데이터를 조회해서 아직 처리되지.. 2021. 3. 22.
안드로이드 이미지 서버로 전송 시 회전하는 문제 해결하기 안드로이드에서 이미지를 서버로 전송할 때, 안드로이드 내부의 imageView에서는 원래의 orientation으로 이미지가 화면에 출력되지만, 서버로 들어갈 때 회전되는 현상을 겪었다. 어떤 이미지들을 회전이 되고 어떤 이미지들은 원래 orientation대로 잘 들어갔다. 해당 이슈는 이미지 파일의 회전 값을 조회해볼 수 있는 ExifInterface를 사용한다. 아래 github link의 가장 마지막 솔루션을 사용하되, 버전문제 때문에 @RequiresApi(api = Build.VERSION_CODES.N) 위 annotation을 추가해줬다. 이미지 회전 처리 함수와 그 함수를 호출하는 함수에 모두 해당 annotaion을 추가해줘야 한다. REFERENCE 1. 아래 링크의 가장 마지막 솔루.. 2021. 3. 20.
AWS killed 1. $ sudo dmesg The above command can show the elaborations of what caused the error discuss.pytorch.org/t/code-stopping-with-text-killed/13827/2 According to a reference above, obviously Linux kernel has a mechanism of 'killing processes' that takes up all CPU ram. I have double checked the process when the server ran on localhost. Same warning with torch occurs. So, the error is, for sure, com.. 2021. 3. 18.
AWS RDS 사용하기 (2) (1) 에 이어서 MySQL서버 연결을 진행해보겠다. 우선 AWS 콘솔에서 생성된 RDS를 확인할 수 있다. DB 인스턴스에 해당하는 대시보드에 들어가면 다음과 같은 화면이 보인다. dashboard에서 DB 인스턴스가 하나 생성됐는데, 스냅샷이나 최근 이벤트만 다수 생성되었다. 그 이유는 DB backupbone인 스냅샷을 7일 주기로 자동 생성함에 따라 스냅샷과 이벤트가 자동 생성되기 때문이다. 여기서 스냅샷은 DB 백업을 생성할 수 있도록 지원한다. 스냅샷을 통해서 특정 시점으로 복구가 가능하다. 2. 그룹 그룹은 크게 서브넷 그룹, 파라미터 그룹, 옵션 그룹으로 나뉘는데, 파라미터 그룹은 DB 인스턴스의 환경설정을 위한 파라미터를 설정해주는 그룹이다. 기본 default 파라미터 그룹은 설정을 변.. 2021. 3. 15.