원본 이미지의 용량이 천차만별이므로 썸네일을 새로 만들어줘야 한다고 생각합니다.
생성한 썸네일 이미지를 이미지 경로에 저장한다
일반적으로 Thumbnail
디렉토리에 해당 이미지의 썸네일이 있을 경우 그것을 사용, 없을 경우 생성, 썸네일은 있으나 원본 이미지가 이동/삭제가 되었을 경우 썸네일 삭제 하는 방식을 사용합니다.
생성한 썸네일 이미지를 임시 경로에 저장한다
이렇게 할 경우 원본이미지의 경로를 관리하는 메타정보가 필요하며, 이 메타정보를 이용해서 임시 경로에 썸네일을 저장하고 썸네일을 찾습니다.
두가지 방식 다 괜찮다고 생각하고, 목적에 따라 선택하면 될 듯 합니다.
※ 아마 많이 사용하는 기능이니까 썸네일 관련 라이브러리가 존재하지 않을까도 싶네요.